.getUserMediaが使いたいけど,その前にエラーに襲われている
解決したいこと
ここに解決したい内容を記載してください。
https://houwa-js.co.jp/2019/06/20190604/
こちらを参考にただQRを読みたかったのですが,エラーに阻まれています
助けてください
該当するソースコード
<video id="player" autoplay></video>
<canvas id="snapshot" width="480" height="640"></canvas>
例)
let player = document.getElementById('player');
let snapshotCanvas = document.getElementById('snapshot');
let width = snapshotCanvas.width;
let height = snapshotCanvas.height;
let startScan = function(callback) {
const canvasContext = snapshotCanvas.getContext("2d");
// 500ms間隔でスナップショットを取得し、QRコードの読み取りを行う
let intervalHandler = setInterval(() => {
canvasContext.drawImage(player, 0, 0, width, height);
const imageData = canvasContext.getImageData(0, 0, width, height);
const scanResult = jsQR(imageData.data, imageData.width, imageData.height);
if (scanResult) {
clearInterval(intervalHandler);
console.log(scanResult);
if (callback) {
callback(scanResult);
}
}
}, 500)
};
let handleSuccess = function(stream) {
// カメラストリームをプレイヤーのデータに設定
player.srcObject = stream;
startScan((scanResult) => {
// このページの呼び出し元に読み取り結果を返す
});
};
// このメソッドを呼び出すことでユーザーにブラウザがカメラを使用することを許可するかの確認ダイアログが表示され、
// 許可されれば handleSuccess が呼ばれる
navigator.mediaDevices.getUserMedia({
video: {facingMode: "environment", width: width, height: height},
audio: false
}).then(handleSuccess)
.catch(err => {
console.log(JSON.stringify(err));
});
自分で試したこと
最初の変数読み込みでエラーになっているようです
もうお手上げ
0