我可以通过以下步骤在Firefox中实现它:
https
media.getusermedia.screensharing.allowed_domains
中的用户首选项about:config
,以将其列入白名单以进行屏幕共享。{video: {mediaSource: "screen"}}
,但是在Chrome中,我完全迷失了。
大多数地方都在说:你需要首先在chrome:// flags中的getUserMedia()中启用名为Enable screen capture support的标志。 (但我无法在任何地方找到此标志)
我已经检查了Muaz Khan的screen share plugin,它运行得很好,但是担心它与其他WebRTC实验项目相结合,而且我不确定如何为我的项目自定义插件。
在这个交汇点,我已经明白,没有插件或标志,就无法捕获桌面媒体流。
所以我想知道的是,我必须启用什么标志/什么是从头开始编写的插件的一部分,以使Chrome支持捕获桌面的方式与我们捕获相机的方式相同。
答案 0 :(得分:9)
在Chrome / Chromium中,您无法使用“标准”Javascript来捕获用户屏幕。
它已替换为chrome.desktopCapture API,这是Chrome扩展程序独有的。
您提供的示例依赖于此API和扩展程序。它是免费插件,但不是免费扩展。
答案 1 :(得分:1)
在Chrome M36(Chromium Issue 347641)中,enable-usermedia-screen-capture
标志已从chrome://flags/
中删除。
对于测试或实验,使用chrome --enable-usermedia-screen-capturing
启动Chrome(在Chrome 68中进行了测试)时,仍可以启用该功能。
截屏:
Chrome Platform Status还突出显示了MediaStream.getDisplayMedia()实现,这将使开发人员无需任何插件即可从浏览器记录或共享屏幕。规范可以在Screen Capture Editor's Draft中找到。