webrtc,人脸拍照小功能

来源:互联网 发布:淘宝开零食店需要什么 编辑:程序博客网 时间:2024/05/01 06:00
<!DOCTYPE html>    <html>        <head>            <meta charset="utf-8">            <title>学习webrtc-chapter2:get user media</title>            <style>          video,canvas{              border:1px solid gray;              width:400px;              height:400px;              border-radius:50%;          }             </style>      </head>        <body>            <video autoplay></video>           <canvas id="myCanvas"></canvas>          <button id="capture">拍照</button>          <script src="photobooth.js"></script>         </body>    </html> 


function hasUserMedia(){//判断是否支持调用设备api,因为浏览器不同所以判断方式不同哦        return !!(navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia);    }    if(hasUserMedia()){        //alert(navigator.mozGetUserMedia)        navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;        var video=document.querySelector("video");        var canvas=document.querySelector("canvas");      var streaming = false;      navigator.getUserMedia({            video:true,//开启视频            audio:false//先关闭音频,因为会有回响,以后两台电脑通信不会有响声        },function(stream){//将视频流交给video            video.src=window.URL.createObjectURL(stream);             streaming = true;      },function(err){            console.log("capturing",err)        });        document.querySelector("#capture").addEventListener("click",function(event){          if(streaming){              //alert(video.clientHeight)              //canvas.width = video.clientWidth;              //canvas.height= video.clientHeight;              canvas.width = 800;              canvas.height = 800;              var context = canvas.getContext('2d');              context.drawImage(video,20,20)          }      })  }else{        alert("浏览器暂不支持")    }  


原创粉丝点击