检测Firefox对屏幕共享的支持

时间:2017-09-07 16:32:04

标签: firefox webrtc getusermedia screensharing

Firefox,自版本52起,将通过以下方式支持屏幕共享:

navigator.mediaDevices.getUserMedia({ video: { mediaSource: 'screen' }}) 
  .then(stream => { ... });

查看this test page to see it in action

我想知道是否有办法检测浏览器是否支持{ mediaSource: 'screen' }

我想只提供与能够共享的用户共享屏幕的选项。因此,我希望能够对此进行检测。

1 个答案:

答案 0 :(得分:4)

  

检测浏览器是否支持{mediaSource:'screen'}?

的方法

迂腐的答案如下,将告诉您是否支持mediaSource约束:

console.log(!!navigator.mediaDevices.getSupportedConstraints().mediaSource);

不幸的是,mediaSource是非标准的,只在Firefox中实现。在撰写本文时,Firefox是唯一一款无需插件即可启用屏幕共享的浏览器。

Chrome使用chromeMediaSource作为插件提供了不同的非标准API,使用较旧的约束语法,但它(正确地)不会出现在新的getSupportedConstraints中。

这仍然有点混乱。长期浏览器可能会最终实现getDisplayMedia