Skip to content
Advertisement

How does Google Meet allow you to screen share from another tab?

In Google Meet, if you click “Present Now” then “A Chrome Tab”, it brings up a window that lets you share from another tab. This is different to the standard Screen Capture API as if you simply run

navigator.mediaDevices.getDisplayMedia({
    video: true,
    audio: true,
})

you get a window where you can choose between sharing your whole screen, sharing a window, or sharing a tab. I would like to limit this to tab only. I have tried applying constraints like:

video: { displaySurface: 'browser' }

or

video: { displaySurface: { exact: 'browser' } }

however, the specs say that this doesn’t work and indeed it doesn’t. But if that’s the case, then how does Google Meet do it?

Advertisement

Answer

Google Meet uses the older extension API for screensharing. This API allows restricting the source types. It is still available but requires an extension (Google meet delivers a preinstalled extensions).

The standard getDisplayMedia does not allow restricting the types of displaySurface.

Update 2022: as on Chrome 107 some of these options are available via getDisplayMedia too, see this blog post for details

User contributions licensed under: CC BY-SA
1 People found this is helpful
Advertisement