Web features explorer

Screen capture

Limited availability

The navigator.mediaDevices.getDisplayMedia() method asks the user to choose a screen or portion of a screen (such as a window) to capture as a media stream.

Browser support

  • Chrome 72 Released on 2019-01-29
  • Chrome Android Not supported
  • Edge 79 Released on 2020-01-15
  • Firefox 33 Released on 2014-10-14
  • Firefox for Android Not supported
  • Safari 13 Released on 2019-09-19
  • Safari on iOS 27 Released on 2026-09-14

Need this feature?
Leave a 👍 on the feedback issue
Don't forget to also leave a comment explaining your specific use case.

MDN documentation

Developer use cases

  • I want Firefox to natively support shared tab/window/system audio capture through `getDisplayMedia()` so a web app can record meeting audio together with microphone input without requiring Chrome. My use case is browser-based meeting capture and transcription. In my app, the browser records: - the meeting audio from a shared tab/window/screen - the local microphone input That lets users capture both sides of a meeting directly from a web app, without installing a native helper or joining meetings with a bot. This is important because I want to use Firefox as my primary browser and still have access to the same browser-native capture workflow that currently only works reliably in Chromium-based browsers. I want Firefox to natively support shared tab/window/system audio capture through `getDisplayMedia()` so a web app can record meeting audio together with microphone input without requiring Chrome. My use case is browser-based meeting capture and transcription. In my app, the browser records: - the meeting audio from a shared tab/window/screen - the local microphone input That lets users capture both sides of a meeting directly from a web app, without installing a native helper or joining meetings with a bot. This is important because I want to use Firefox as my primary browser and still have access to the same browser-native capture workflow that currently only works reliably in Chromium-based browsers. [see original comment]
  • On Android XR devices, inside of our webxr call application, there is no way to capture a portion of your screen to share with users. This is particularly an issue on Galaxy XR (Android XR). It would be great if the user demonstrating something in the session were able to just share an open window (or their entire view) using the browser alone. On Android XR devices, inside of our webxr call application, there is no way to capture a portion of your screen to share with users. This is particularly an issue on Galaxy XR (Android XR). It would be great if the user demonstrating something in the session were able to just share an open window (or their entire view) using the browser alone. [see original comment]
  • Users of our web app want to export a data table as a presentation-ready image they can drop into a slide or an email. Basically a screenshot of the table. `getDisplayMedia()` is the one browser-native route I can see. You grab a frame from the stream, draw it to a canvas and save it. The browser captures the real rendered page, so fonts, badges and colours come out as users see them. As far as I can tell, `preferCurrentTab` (the option that offers "This Tab" up front) is only in Chromium browsers right now, so I'd like to see it work in Firefox and Safari too. Users of our web app want to export a data table as a presentation-ready image they can drop into a slide or an email. Basically a screenshot of the table. `getDisplayMedia()` is the one browser-native route I can see. You grab a frame from the stream, draw it to a canvas and save it. The browser captures the real rendered page, so fonts, badges and colours come out as users see them. As far as I can tell, `preferCurrentTab` (the option that offers "This Tab" up front) is only in Chromium browsers right now, so I'd like to see it work in Firefox and Safari too. [see original comment]