1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > js 调用摄像头拍照

js 调用摄像头拍照

时间:2021-08-25 22:09:38

相关推荐

js 调用摄像头拍照

本文主要介绍,js+canvas+video ,调用本地摄像头,实现拍照效果,代码如下,供大家参考学习

<!doctype html><html lang="en"><head><meta charset="UTF-8"><title>Document</title></head><body><video width="200px" id="video" height="150px"></video><canvas width="200px" id="canvas" height="150px"></canvas><p><button id="start">打开摄像头</button><button id="snap">截取图像</button><button id="close">关闭摄像头</button></p></body><script>// 声明变量var canvas = document.getElementById('canvas'),context = canvas.getContext('2d'),video = document.getElementById("video"),snap = document.getElementById("snap"),close = document.getElementById("close"),start = document.getElementById("start"),MediaStreamTrack;// 点击打开摄像头start.addEventListener('click', function () {if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {navigator.mediaDevices.getUserMedia({video: true,// audio: true}).then(function (stream) {console.log(stream);MediaStreamTrack=typeof stream.stop==='function'?stream:stream.getTracks()[1];try{video.src=window.URL.createObjectURL(stream);}catch(e){ video.srcObject = stream;}video.play();}).catch(function(err){console.log(err);});}else if(navigator.getMedia){navigator.getMedia({video: true}).then(function (stream) {console.log(stream);MediaStreamTrack=stream.getTracks()[1];video.src=(window.webkitURL).createObjectURL(stream);video.play();}).catch(function(err){console.log(err);});}});// 截图snap.addEventListener('click', function () {context.drawImage(video, 0, 0,200,150);});// 关闭按钮close.addEventListener('click', function () {MediaStreamTrack && MediaStreamTrack.stop();});</script></html>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。