如何取消选择DesktopMedia



在我的网页中,有一个屏幕共享流,以下是参数:

{
    audio: false,
    video: mandatory {
               chromeMediaSource: 'desktop',
               chromeMediaSourceId: IM.screenSourceId
              ...
           }
     ...
}

我的Chrome扩展在后台脚本中包含以下代码:

desktop_id = chrome.desktopCapture.chooseDesktopMedia (session, port.sender.tab, onAccessApproved);

当点击页面上的"取消"按钮时,后台脚本中的监听器功能被触发:

chrome.desktopCapture.cancelChooseDesktopMedia (desktop_id);

console.logchrome://extensions中看到desktop_id实际上是1的整数值。

但它似乎不起作用,我尝试了很多Chrome版本,但仍然不起作用。我该怎么办才能取消屏幕共享?

如果选择器对话框仍处于打开状态,chrome.desktopCapture.cancelChooseDesktopMedia将关闭该对话框。它不会在用户选择录制目标后停止媒体流。

如果要停止录制屏幕,请调用媒体流的.stop()方法。例如

navigator.webkitGetUserMedia({
    audio: false,
    video: {
        mandatory: {
            chromeMediaSource: 'desktop',
            chromeMediaSourceId: IM.screenSourceId
        }   
    }   
}, function onSuccess(stream) {
    // Example: end the recording after 10 seconds.
    setTimeout(function() {
        stream.stop();
    }, 10000);
}, function onError() {
    // Handle error
}); 

相关内容

  • 没有找到相关文章

最新更新