使用 navigator.mediaDevices.getUserMedia 检查 JavaScript 中的主显示器

发布于 2025-01-14 04:18:42 字数 323 浏览 1 评论 0原文

我想通过浏览器捕获主监视器。我尝试这样做:

navigator.mediaDevices.getDisplayMedia({
      video: {
        displaySurface: 'monitor',
        logicalSurface: true,
        cursor: 'always',
        frameRate: {
            ideal: 20
        }
    }
})

接下来,用户选择他要广播的屏幕。我想检查用户是否已选择主监视器(如果有多个)。我怎样才能做到这一点?谢谢。

I want to capture the main monitor by the browser. I'm trying to do it like this:

navigator.mediaDevices.getDisplayMedia({
      video: {
        displaySurface: 'monitor',
        logicalSurface: true,
        cursor: 'always',
        frameRate: {
            ideal: 20
        }
    }
})

Next, the user chooses which screen he will broadcast. I want to check that the user has selected the main monitor (in case there are several). How i can do this? Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

披肩女神 2025-01-21 04:18:42

通过检查displaySurface


navigator.mediaDevices.getDisplayMedia({
        video: {
            displaySurface: 'monitor',
            logicalSurface: true,
            cursor: 'always',
            frameRate: {
                ideal: 20
            }
        }
    })
    .then((strm) => {
        let displaySurface = strm.getVideoTracks()[0].getSettings().displaySurface;
        console.log(displaySurface);
        if (displaySurface !== 'monitor') {
          // do your stuff...
        }
    })
    .catch((err) => console.error(err));

By checking displaySurface.


navigator.mediaDevices.getDisplayMedia({
        video: {
            displaySurface: 'monitor',
            logicalSurface: true,
            cursor: 'always',
            frameRate: {
                ideal: 20
            }
        }
    })
    .then((strm) => {
        let displaySurface = strm.getVideoTracks()[0].getSettings().displaySurface;
        console.log(displaySurface);
        if (displaySurface !== 'monitor') {
          // do your stuff...
        }
    })
    .catch((err) => console.error(err));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文