首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Google Chrome不允许选择要使用的摄像头

Google Chrome不允许选择要使用的摄像头
EN

Stack Overflow用户
提问于 2020-10-17 02:45:45
回答 2查看 2.1K关注 0票数 1

我正在开发一个流媒体网站。然而,有时我安装了一个名为OBS的软件,它安装了一个虚拟摄像头。从那时起,当网站尝试使用相机时,它使用的是OBS虚拟相机,而不是我的物理相机。但这种情况只发生在我的电脑上。当使用摄像机时,此权限对话框出现:

在我的笔记本电脑上,这是可行的,也就是说,在同一个对话框中,它显示了一个组合框,允许选择要使用的摄像头。

在网站上,我这样启动摄像头:

代码语言:javascript
运行
复制
navigator.mediaDevices.getUserMedia(constraints).then(function (stream) {

});

我是否可以使用getUserMedia功能执行某些操作,或者此问题仅与PC配置有关?

EN

回答 2

Stack Overflow用户

发布于 2020-10-23 00:21:08

这与Google Chrome有关。假设OBS的deviceID保持不变,然后使用navigator.mediaDevices.enumerateDevices()获取所有可用设备的列表。

(MDN的示例非常方便):

代码语言:javascript
运行
复制
navigator.mediaDevices.enumerateDevices()
.then(function(devices) {
  devices.forEach(function(device) {
    console.log(device.kind + ": " + device.label +
                " id = " + device.deviceId);
  });
})
.catch(function(err) {
  console.log(err.name + ": " + err.message);
});

然而,如果你想要能够切换摄像头中流,那么我建议使用WebRTC的“官方”example,然而,你将需要使用stream.replaceTracks来实时查看它。

票数 4
EN

Stack Overflow用户

发布于 2020-10-24 21:15:28

在我看来,你的网络软件缺乏一个用户界面,让你的用户选择相机或虚拟相机,就像@divinelemom建议的那样。这样做是个好主意。下面是执行此操作的示例代码。

https://webrtc.github.io/samples/src/content/devices/input-output/

同时,使用此URL查看Chrome用于选择默认摄像头的界面。

chrome://设置/内容/摄像头

它会给你一个这样的页面。你的选择是“粘性”的,因为在你设置之后,它将被你的web应用使用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64394782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档