我在firefox中得到以下错误(在Chrome / Edge /Safari中没有问题):
MediaStreamError { name: "AbortError", message: "Starting video failed", constraint: "", stack: "" }当抛出此错误时,浏览器控制台仅显示< unavailable >。
我使用的是来自webrtc.github.io的adapter-latest.js,代码在我的应用程序中的其他页面上工作得很好,但不是在某个特定的页面上。有没有可能找出是什么干扰了getUserMedia?我已经试着注释掉所有其他的库和包。
我的代码是:
var video = document.getElementById('recorder');
video.onloadedmetadata = function(e) {
$("#takePicture").show();
if($("#customerImage").attr("src") == ""){
$("#recorder").show();
}
};
navigator.mediaDevices.getUserMedia({ video: true})
.then(stream => {
video.srcObject = stream;
})
.catch(e => console.log(e));发布于 2018-09-19 20:29:43
您确定需要适配器吗?在我的经验中,它带来的问题比解决的要多。
你能尝试使用约束吗?
示例(我删除了一些东西,但它在这里的效果很好):
constraints = {
width: 1280,
height: 720,
frameRate: 10, //mobile
facingMode: {
exact: "environment"
} //mobile
}
navigator.mediaDevices.getUserMedia({
audio: false,
video: constraints
}).
then(handleSuccess).catch(handleError);
function handleSuccess(stream) {
video.src = URL.createObjectURL(stream);
video.play();
}
function handleError(error) {
console.log('navigator.getUserMedia error: ', error);
}发布于 2020-07-16 03:18:21
我之所以面临这个问题,是因为我让Chrome也运行相同的应用程序并使用网络摄像头。所以基本上这个摄像头已经在使用了,我也在尝试通过Firefox访问它。
https://stackoverflow.com/questions/52405471
复制相似问题