首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DOMException:无法启动视频源

DOMException:无法启动视频源
EN

Stack Overflow用户
提问于 2020-03-24 19:02:49
回答 9查看 25.3K关注 0票数 11

我想用JS从摄像头上得到一段视频,但没有镜头。

消息:

DOMException:无法启动视频源

App.js

代码语言:javascript
运行
复制
const video = document.getElementById("video");

function startVideo() {
  navigator.getUserMedia(
    {
      video: {}
    },
    stream => (video.srcObject = stream),
    err => console.log(err)
  );
}

startVideo();

index.html

代码语言:javascript
运行
复制
...
<body>
    <video id="video" width="720" height="540" autoplay muted></video>
</body>
...

谢谢你的帮忙

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2020-03-25 20:58:37

TLDR:我已经测试了您的代码,并对其进行了一些更改:

https://codepen.io/puradawid/pen/PoqxzPQ

看起来问题就在这里:

代码语言:javascript
运行
复制
navigator.getUserMedia({
    video: {}
  },
  stream => { video.srcObject = stream },
  err => console.log(err)
);

对于文档navigator.getUserMedia是不推荐的,支持它的是navigator.mediaDevices.getUserMedia。但是,更改这个值并不能解决正确的问题,即回调函数。此方法返回由Promise控制的.then(),因此更改它使我能够以代码方式看到我的脸:

代码语言:javascript
运行
复制
navigator.mediaDevices.getUserMedia({
    video: true
}).then(
  stream => (video.srcObject = stream),
  err => console.log(err)
);
票数 8
EN

Stack Overflow用户

发布于 2020-12-01 02:13:06

如果有其他人有这个问题,而其他没有任何帮助。确保您的相机没有被不同的软件/浏览器索取/使用。

票数 26
EN

Stack Overflow用户

发布于 2020-09-16 16:29:47

在Windows 10中,进入设置->隐私->应用程序权限(左侧)->麦克风->启用‘允许应用程序访问您的麦克风’之后,重试您的JS program....It将工作!!

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

https://stackoverflow.com/questions/60837628

复制
相关文章

相似问题

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