![](/img/trans.png)
[英]Node.js/WebRTC: webrtc-adapter does not handle mediaDevice.getUserMedia
[英]TypeError: 'getUserMedia' webrtc adapter.debug.js
突然,我在Firefox 45.0.2中收到此錯誤。 TypeError:在未實現接口MediaDevices的對象上調用了'getUserMedia'。 在Chrome和Opera中運行良好。
為了找出我的代碼中的錯誤,我決定看一下該演示,以了解在Firefox中的表現。
AdapterJS / demo / MediaStream.html
getusermedia.html:15 Uncaught ReferenceError: getUserMedia is not defined
使用調用getUserMedia的實際函數進行了更新
function captureUserMedia(callback) {
$('#videoSource').css('display', 'none');
var videoSource = videoSelect.value;
var constraints = null;
constraints = {
video: {
optional: [{
sourceId: videoSource
}]
},
audio: false
}
var htmlElement = document.getElementById('rtcvideo') || document.getElementsByTagName('object');
htmlElement.setAttribute('autoplay', true);
htmlElement.setAttribute('controls', true);
var mediaConfig = {
video: htmlElement,
onsuccess: function(stream) {
config.attachStream = stream;
video = attachMediaStream(video, stream);
callback && callback();
htmlElement.setAttribute('muted', true);
rotateInCircle(htmlElement);
},
onerror: function() {
alert('unable to get access to your webcam');
}
};
getUserMedia(constraints, mediaConfig.onsuccess, mediaConfig.onerror);
streamAttached = true;
}
可能您沒有讓腳本等待用戶允許使用getUserMedia()。 讓您的JavaScript稍等一下。
使用最新的adapter.debug.js 13.3解決了該問題。
更新您寫的內容:
navigator.getUserMedia({"audio":true, "video":true}, gotUserMedia, didntGetUserMedia);
myVideo.src = URL.createObjectURL(myVideoStream);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.