📅  最后修改于: 2023-12-03 15:16:10.114000             🧑  作者: Mango
随着HTML5的出现,现代浏览器为我们提供了很多可以直接使用的API。其中之一是Navigator.MediaDevices.getUserMedia()
API,用于获取本地设备的输入流。这个API可以用来控制相机。
下面将介绍如何使用JavaScript获取相机的视频流并显示在HTML页面上。
navigator.mediaDevices.getUserMedia()
方法获取本地视频流。navigator.mediaDevices.getUserMedia(constraints)
.then(function(mediaStream) {
// success callback
})
.catch(function(error) {
// error callback
});
const constraints = {
video: true
};
video
元素来显示视频流。const video = document.querySelector('video');
video.srcObject = mediaStream;
video.onloadedmetadata = function(e) {
video.play();
};
MediaStream.getTracks()
以获取Track
对象数组,并调用其stop()
方法。mediaStream.getTracks().forEach(function(track) {
track.stop();
});
const constraints = {
video: true
};
navigator.mediaDevices.getUserMedia(constraints)
.then(function(mediaStream) {
const video = document.querySelector('video');
video.srcObject = mediaStream;
video.onloadedmetadata = function(e) {
video.play();
};
})
.catch(function(error) {
console.log(error);
});
// 如果需要停止视频流
mediaStream.getTracks().forEach(function(track) {
track.stop();
});
现在您知道如何在JavaScript中获取相机的视频流。通过使用网页摄像头,您可以创建有趣的应用程序,如视频聊天、视频游戏和人脸检测应用程序等。