我发现此tutorial是在流式传输网络摄像头视频并使圆形对象变成浏览器的心脏时出现的,但其中许多功能已被弃用。 我成功地使用相应的新版本对其进行了更改,但是我无法像在tutorail中那样在服务器和客户端中都使用网络摄像头。
我试图在互联网上找到解决问题的方法,但是数量不多。
这是我使浏览器访问网络摄像头的方式: javascript
const video = document.getElementById('video');
const constrains = {
audio: true,
video: {
mandatory: {
minWidth: window.innerWidth,
}
}
}
async function getMedia() {
try {
const stream = await navigator.mediaDevices.getUserMedia(constrains);
handleSuccess(stream);
/* use the stream */
} catch(err) {
/* handle the error */
console.log(err.toString());
}
}
function handleSuccess(stream){
window.stream = stream;
video.srcObject = stream;
var width = stream.clientWidth;
}
document.addEventListener('DOMContentLoaded', function(event) {
//document.addEventListener('mousemove', onDocumentMouseMove, false);
init(50,50);
initLight();
initPlane();
initVase();
console.log("vaso inizializzato")
animate();
getMedia();
/*initLight();
initPlane();
initVase();
console.log("vaso inizializzato")
animate();
requestAnimationFrame(render);*/
}
);
在index.html文件中,我写了:
<div class="video-wrap">
<video id="video" playsinline autoplay></video>
我有那些错误:
Firefox
NotAllowedError: The request is not allowed by the user agent or the platform in the current context.
Chrome
TypeError: Cannot read property 'getUserMedia' of undefined
您如何建议我解决此问题?我也应该使用网络套接字来发送视频信息吗?