2017-03-01 5 views
2

が定義されていません。私のウェブカメラからのライブ映像のスナップショットを取るために画像キャプチャが、私はこのコードを実行しようとしています

const canvas = document.querySelector('canvas'); 
 

 
var interval; 
 
var track; 
 

 
navigator.mediaDevices.getUserMedia({video: true}) 
 
.then(gotMedia) 
 
.catch(err => console.error('getUserMedia() failed: ', err)); 
 

 
function gotMedia(mediastream) { 
 
    track = mediastream.getVideoTracks()[0]; 
 
    var imageCapture = new ImageCapture(track); 
 
    interval = setInterval(function() { 
 
     imageCapture.grabFrame() 
 
     .then(processFrame) 
 
     .catch(err => console.error('grabFrame() failed: ', err)); 
 
    }, 1000); 
 
} 
 

 
function processFrame(imgData) { 
 
    canvas.width = imgData.width; 
 
    canvas.height = imgData.height; 
 
    canvas.getContext('2d').drawImage(imgData, 0, 0); 
 
} 
 

 
function stopGrabFrame(e) { 
 
    clearInterval(interval); 
 
    track.stop(); 
 
}

を、それが失敗し、ブラウザのコンソールが語ります次

getUserMedia()が失敗しました:にReferenceErrorを:画像キャプチャをgotMedia

で定義されていません

これは、私のウェブブラウザ(Google Chrome)がImageCaptureをサポートしていないことを意味しますか?私はそれを修正することはできますか?

+0

どこから 'ImageCapture'を取得しますか?あなたが使っているライブラリですか? – caisah

+0

こんにちは@caisah私はどこからでもそれを含めなかった。ソースはhttps://www.w3.org/TR/image-capture/#repeated-grabbing-of-a-frameです。彼らには何も含まれていないようです。 –

+0

右。あなたは他のボウワーで試したことがありますか?私はどこにでもそのドキュメントを見つけられませんでした。 – caisah

答えて

関連する問題