Chrome中的WebRTC屏幕共享(Retina MacBookPro)低帧率

时间:2018-01-30 03:22:23

标签: macos webrtc screen share

在Chrome浏览器之间进行屏幕共享演示取决于WebRTC时,我遇到了一个大问题。

环境: MacBookPro macOS 10.13.3 chrome:64.0.3282.119

为了获取屏幕媒体sourceId,我还进行了chrome扩展,后台脚本.js代码如下:



var screenOptions = ['screen', 'window'];
......
chrome.desktopCapture.chooseDesktopMedia(screenOptions, port.sender.tab, onAccessApproved);




在我的html javascript中获取媒体sourceId时,请求屏幕媒体如下:



    var constraints = {
        video: {
            mandatory: {
                chromeMediaSource: 'desktop',
                maxWidth: 1280,
                maxHeight: 720,
                maxFrameRate: 30,
                minAspectRatio: 1.77,
                chromeMediaSourceId: sourceId
            }
        }
    };
    navigator.mediaDevices.getUserMedia(constraints).then(gotLocalStream).catch(function (e) {
        alert('getUserMedia() error: ' + e.name);
    });




问题出现了:当我在chrome:// webrtc-internals中检查WebRTC统计数据时,我发现当我在主显示器中播放视频时googFrameRateInput非常低(< = 10),而当googFrameRateInput可以达到30时在主显示屏上什么都不做。

googFrameRateInput

我也在windows chrome中尝试这个,即使播放视频,googFrameRateInput也可以达到24~30。

为什么googFrameRateInput在mac chrome中太低了?

非常感谢。

1 个答案:

答案 0 :(得分:0)

更新电子版6.0.2解决了这个问题。