html5调用摄像头实例代码
HTML5 的 getUserMedia()
接口提供了一种直接从用户设备(如摄像头、麦克风)获取媒体流的方法。通过它,我们可以实现很多有趣的功能,比如视频聊天、人脸识别、AR 等。
<!DOCTYPE html>
<html>
<head>
<title>HTML5 调用摄像头</title>
</head>
<body>
<video id="video" width="320" height="240" autoplay></video>
<button id="start">启动摄像头</button>
<button id="stop">停止摄像头</button>
<script>
const video = document.getElementById('video');
const startButton = document.getElementById('start');
const stopButton = document.getElementById('s 1. github.com
github.comtop');
startButton.addEventListener('cli 1. github.com
github.comck', async () => {
try {
const stream = await navigator.mediaDevices.getUserMedia({ video: true });
video.srcObject = strea 1. github.com
github.comm;
} catch (err) {
console.error("Err 1. github.com
MIT
github.comor accessing media devices.", err);
}
});
stopButton.addEventListener('click', () => {
const tracks = video.srcObject.getTracks();
tracks.forEach(track => track.stop());
video.srcObject = null;
});
</script>
</body>
</html>
HTML 结构:
<video>
标签用来显示摄像头捕获的视频流。JavaScript 代码:
startButton
点击事件:
navigator.mediaDevices.getUserMedia()
请求访问用户的摄像头。srcObject
。stopButton
点击事件:
srcObject
设置为 null。getUserMedia()
的支持程度不同,建议使用 polyfill 来保证兼容性。canvas
元素将视频帧绘制到画布上,然后将画布内容转换为图片数据。MediaRecorder
API 录制视频。通过以上代码和解释,你应该能够理解如何使用 HTML5 的 getUserMedia()
接口来调用用户的摄像头。这个功能在很多 Web 应用中都有广泛的应用,比如视频聊天、在线教育、图像处理等。
想了解更多关于 HTML5 摄像头开发的知识,欢迎继续提问!
你可以提出以下问题:
我将尽力为你解答。