html5 摄像头,html5调用摄像头拍照上传

  html5 摄像头,html5调用摄像头拍照上传

  边肖的理念提供给每个人。学习编程最重要的是实践。虽然我这里有完善的代码,但是希望大家都能自己写代码。

  html媒体捕获API提供了对摄像机的可编程访问,用户可以直接使用getUserMedia来获取摄像机提供的视频流。但实际上用html5调用手机摄像头存在很多问题:

  1)谷歌发布的Chrome在版本21之后只增加了一个用于高质量视频和音频通信的getUserMedia API。这个API允许Web应用程序访问摄像头和麦克风。其他手机浏览器中只有opera支持html5调用本地相机功能。

  2)两款浏览器都不支持访问多个摄像头:chrome不支持访问后置摄像头,而pera支持访问后置摄像头。

  安卓手机,浏览器chrome32版本实现浏览器调用设备的摄像头拍照。主要有三步:1)获取视频流

  添加一个HTML5视频标签,并使用从摄像机获得的视频作为该标签的输入源。按如下方式复制代码:

  var video=document . getelementbyidx _ x _ x( video );

  navigator . get user media({ video:true },function (stream) {

  video . src=window . webkiturl . createobjecturl(stream);

  },函数(错误){ alert(错误);});2)拍照

  关于camera函数,使用HTML5的Canvas来实时捕捉Video标签的内容,Video元素可以作为Canvas图像的输入来复制代码如下:

  函数scamera() {

  var video element=document . getelementbyidx _ x _ x( video );

  var canvasObj=document . getelementbyidx _ x _ x( canvas 1 );

  var context 1=canvasobj . get context( 2d );

  context 1 . fill style= # ffffff ;

  context1.fillRect(0,0,320,240);

  context 1 . draw image(video element,0,0,320,240);

  }3)图片获取

  从canvas中获取图片数据的核心思想是利用Canvas的toDataURL将Canvas的数据转换成base64位编码的PNG图像拷贝代码。代码如下:

  var img data=canvas . toda taurl(" image/png ");

  imgData的格式如下:“数据:image/png;base64,

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: