NotReadableError:分配视频源失败

新手上路,请多包涵

当我尝试执行以下代码并选择笔记本电脑的摄像头时,我在 Firefox 51 中收到此错误:

 navigator.getMedia = (navigator.getUserMedia ||
  navigator.webkitGetUserMedia ||
  navigator.mediaDevices.getUserMedia ||
  navigator.msGetUserMedia);

navigator.getMedia({
    video: true,
    audio: false
  },
  function(stream) {
    if (navigator.mozGetUserMedia) {
      video.mozSrcObject = stream;
    } else {
      var vendorURL = window.URL || window.webkitURL;
      video.src = vendorURL.createObjectURL(stream);
    }
    video.play();
  },
  function(err) {
    console.log("An error occured! " + err);
  }
);

错误:

 NotReadableError: Failed to allocate videosource

有人可以详细说明这意味着什么吗?我的网络摄像头坏了吗?我昨天从脚本中使用它没有问题。它没有分配给其他应用程序。

原文由 Tomáš Zato 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.3k
2 个回答

NotReadableError 是 Firefox 在允许但无法访问网络摄像头时抛出的符合规范的错误。

这种情况最常发生在 Windows 上,因为网络摄像头已被另一个应用程序使用。 Firefox 将在 Windows 和 Mac 上抛出此错误,即使只有在 Windows 上进程才能独占访问网络摄像头。

该错误可能由于其他原因而发生:

尽管用户授予了使用匹配设备的权限,但在操作系统、浏览器或网页级别发生了硬件错误,导致无法访问该设备。

Chrome 抛出 TrackStartError 代替。它还会出于 其他 原因 抛出它。 Chrome 标签页可以共享同一台设备。

资料来源: 常见的 getUserMedia() 错误

原文由 octavn 发布,翻译遵循 CC BY-SA 4.0 许可协议

请确保您的摄像头未被其他应用程序(chrome,ie 或任何其他浏览器)使用。我浪费了半天的时间寻找解决方案,最后发现我的相机被其他应用程序使用了。

原文由 Shashank 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏