我正在尝试使用getUserMedia来使用网络摄像头。但是代码不能在本地机器上运行。我在Firefox 31上的chrome 43上检查了它。
在Firefox中,它提示共享请求并在控制台日志中共享后显示消息“Failure:HARDWARE_UNAVAILABLE”
在Chrome中,它甚至没有要求访问网络摄像头的权限,也没有要求控制台中的错误消息或日志。
在jsfiddle中尝试相同的代码工作正常,浏览器能够访问相机并正常工作。 以下是代码:
<!DOCTYPE html>
<head>
<title>HTML5 User Media Try Out</title>
<script>
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia; ;
if (navigator.getUserMedia) {
navigator.getUserMedia({video: true},loadVideo,fail);
} else {
console.log("User Media not defined in this browser");
}
function loadVideo(stream) {
document.getElementById("video").src = window.URL.createObjectURL(stream);
}
function fail(failError) {
console.log("Failure:" + failError);
}
</script>
</head>
<body>
<video id="video" width="640" height="480" autoplay="true"></video>
</body>
</html>
上述代码无法在本地运行。 但是在JSFiddle中使用相同的代码就好了。
JSFiddle链接:http://jsfiddle.net/7wzw7u3u/
请帮助解决这个问题。