2017-03-03 8 views
3

を割り当てることができませんでした私は、次のコードを実行しようとすると、私は私のラップトップのカメラを選択するとき、私は、Firefox 51でこのエラーが出る:NotReadableError:videosource

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 

ことができる人これが何を意味するのかを精緻化しますか?私のウェブカメラは壊れていますか?私は問題なく昨日、スクリプトからそれを使用しました。他のアプリケーションには割り当てられません。

+1

[あなたのpolyfillがボルケートされているため]、インタフェースMediaDevices.'を実装していないオブジェクトで、 'TypeError: 'getUserMedia'が呼び出されました。(http://stackoverflow.com/a/37687846/918910)また、あなたの[ブラウザの条件付きコードが間違っています](http://stackoverflow.com/a/39136641/918910)、 'createObjectURL'は廃止されました(http://stackoverflow.com/a/40210033/918910) 。代わりに[adapter.jsを使用する](http://jsfiddle.net/jib1/srn9db4h/)を検討するか、またはほとんどのブラウザが既に 'navigator.mediaDevices.getUserMedia'をネイティブでサポートしていることをお楽しみください。 – jib

+0

また、ここでコードに触発されたサンプルコードまたは記事をお知らせください。私はそれを見つけて燃やすことができます。 ;) – jib

+0

Firefoxはpolyfillについて警告し、 'navigator.mediaDevices.getUserMedia'を提案しました。これは実際には動作せず、エラーを投げました。私はどこからコピーしたのか分かりません。もし私がそれを判断しようとするなら、私が見ている主な問題は、何らかのプログラミングAPIではなく、フレームをキャプチャするのに '

答えて

2

NotReadableErrorはウェブカメラのアクセスが許可されていますが、 。

これは、ウェブカメラが既に別のアプリで使用されているため、Windowsで最も一般的に発生します。 Windowsプロセスのみがウェブカメラに排他的アクセス権を取得しても、FirefoxはWindowsとMacの両方でこのエラーをスローします。

エラーは、他の理由で発生することができます

Although the user granted permission to use the matching devices, a hardware error occurred at the operating system, browser, or Web page level which prevented access to the device.

Chromeは代わりにTrackStartErrorをスローします。それはまたotherreasonsのためにそれを投げます。 Chromeのタブは同じ端末を共有できます。

出典:common getUserMedia() errors

2

他のアプリケーション(クローム、または他のブラウザ)でカメラを使用していないことを確認してください。 私は解決のために私の一日を無駄にしていました。最終的に、私のカメラが他のアプリケーションによって使用されたことがわかりました...

+0

WOW!ソリューションを見つけるのにどれくらいの時間を費やす必要がありますか?♥ – ivahidmontazer