NotReadableError:无法分配视频源

Tom*_*ica 22 javascript html5 getusermedia

当我尝试执行以下代码并选择笔记本电脑的相机时,我在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);
  }
);
Run Code Online (Sandbox Code Playgroud)

错误:

NotReadableError: Failed to allocate videosource
Run Code Online (Sandbox Code Playgroud)

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

Oct*_*icu 27

NotReadableError 是允许网络摄像头访问时Firefox引发的符合规范的错误,但不可能.

最常见的情况是在Windows上发生,因为网络摄像头已被其他应用程序使用.Firefox将在Windows和Mac上抛出此错误,即使只有Windows进程才能获得对网络摄像头的独占访问权限.

出于其他原因可能会发生错误:

虽然用户已授予使用匹配设备的权限,但操作系统,浏览器或网页级别发生硬件错误,导致无法访问设备.

Chrome会引发TrackStartError反响.由于其他 原因,它也会抛出它.Chrome标签页可以共享同一设备.

来源: 常见的getUserMedia()错误.

  • 可能的解决方案是什么?当没有其他应用程序正在使用网络摄像头时,仍然收到此错误? (3认同)

Sha*_*ank 7

请确保您的相机没有被其他应用程序(Chrome,即其他浏览器)使用。我浪费了一天的时间寻找解决方案,最后发现我的相机被其他应用程序使用。


Mar*_*inM 6

我在 Windows 10 上遇到了同样的问题,没有其他应用使用我的视频设备。问题是在 Windows 10 中的设置-> 应用程序权限(在左栏中)有一个麦克风和摄像头设置(允许应用程序访问您的麦克风/摄像头)需要打开。在此设置下方的应用程序列表中找不到浏览器并不重要,只需在此处启用它即可。