Open Bug 1948156 Opened 1 month ago Updated 23 days ago

issue sharing screen on macos sonoma on firefox 135.0

Categories

(Core :: WebRTC: Audio/Video, defect)

Firefox 135
defect

Tracking

()

People

(Reporter: mauricio.guaruja, Unassigned)

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:135.0) Gecko/20100101 Firefox/135.0

Steps to reproduce:

give screen and system audio recording permissions to firefox on macos settings
use an webapp with screen sharing capabilities like google meet or discord
request to share screen
on firefox choose system option (only available option)
on macos choose screen

Actual results:

screen is not shared
app may report that permission was not given

Expected results:

share whole screen like it was working in previous firefox versions

The Bugbug bot thinks this bug should belong to the 'Core::Widget: Cocoa' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Widget: Cocoa
Product: Firefox → Core
Component: Widget: Cocoa → WebRTC: Audio/Video

Thanks for reporting! We know this works generally on Sonoma. We can try to debug your particular case by capturing logs:

  • Ideally in a fresh profile
  • Open https://mozilla.github.io/webrtc-landing/gum_test.html
  • In another tab open about:logging
  • On about:logging, select the webrtc preset and click "Start Logging"
  • On the gum_test.html tab, start screen capture per your STR
  • Back on about:logging click "Stop Logging"
  • In the Profiler tab that opens up, in the top right corner click to upload the profile. Make sure to include hidden threads.
  • Paste the link here.

In the meantime you may be helped by, on about:config, setting the media.getdisplaymedia.screencapturekit.picker.enabled pref to false.
If not, does setting the media.getdisplaymedia.screencapturekit.enabled pref to false help?

With both disabled you should be back to the old behavior using CGDisplayStream instead of ScreenCaptureKit.

Flags: needinfo?(mauricio.guaruja)

ok here it is

https://share.firefox.dev/4hQirTv

this worked as workaround after closing (window and app) and opening again firefox:

In the meantime you may be helped by, on about:config, setting setting the media.getdisplaymedia.screencapturekit.picker.enabled pref to false

Flags: needinfo?(mauricio.guaruja)

The logs show we have not received a frame from the system. There are some code paths from where the system frame callback leads to an early exit. This on a thread our profiler doesn't know about. What I mean is I can't know for sure whether a callback isn't happening at all, or whether we're hitting one of these cases.

I did test with macOS 14.2.1 in a VM and it was working fine, so marking S3.

Also note that if you have two instances/binaries of Firefox running, where both have requested to do screen capture, there may be some confusion in macOS re permissions. Best then to kill all instances and start only one. By instances here I mean parent processes. Multiple child processes under the same parent process counts as a single instance. And this only applies if the multiple instances have the same mac bundle id, which is used to identify apps for permissions.

Feel free to file with Apple through Feedback Assistant, though I suggest updating to latest macOS 14 first.

Severity: -- → S3
Status: UNCONFIRMED → NEW
Ever confirmed: true
You need to log in before you can comment on or make changes to this bug.