摄像头的管理(camera) ---- HTML5+
模块:camera
Camera模块管理设备的摄像头,可用于拍照、摄像操作,通过plus.camera获取摄像头管理对象。
应用场景:保存自拍,保存照片,上传照片,保存视频,上传视频;
通过之前的模块可以大致知道:这个是封装了一个camera的一个对象,这个对象有两个方法,一个拍照的方法,一个摄像的方法;剩下的就是一个回调;
两个核心方法:
captureImg();
startVideoCapture(); / stopVideoCapture();
方法:Camera plus.camera.getCamera(index); 1,主摄像头,2 ,辅摄像头
具体:
var camera = plus.camera.getCamera();
camera.captureImage( successCB, errorCB, option );
首先是两个回调:成功回调和失败回调;成功回调返回一个图片的存放路径;失败回调返回一个error对象,包含两个信息:code,message;
其次是option对象:
attribute string filename:拍照或摄像文件保存的路径,以 “ / ”结尾是路径,自动生成文件名;(名字也可以指定,但是不要这样)
attribute string format:拍照或摄像的文件格式;
attribute string index:1,主摄像头;2,辅助摄像头,仅仅ios支持;
attribute PopPosition popover:拍照或摄像界面弹出指示区域,仅ipad{top:'10px',left:'10px',width:'2000px',height:'2000px'}
示例:
<header class="mui-bar mui-bar-nav">
<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
<h1 class="mui-title">调用摄像头</h1>
</header>
<div class="mui-content mui-content-padded">
<button type="button" class="mui-btn mui-btn-blue mui-btn-block" id="oCamera">拍照片</button>
<button type="button" class="mui-btn mui-btn-blue mui-btn-block" id="oVideo">录像</button>
<ul class="mui-table-view" id="imageList">
<li class="mui-table-view-cell">
<a class="mui-navigate-right">
Item 1
</a>
</li>
</ul>
<img src="" alt="" id="imgpath" />
<video id="videoC" width="100%" controls="controls"></video>
</div>
<script src='http://libs.baidu.com/jquery/1.8.3/jquery.min.js'></script>
<script src="js/mui.min.js"></script>
<script type="text/javascript">
mui.plusReady(function(){
$("#oCamera").bind('tap',function(){
var camera = plus.camera.getCamera();
camera.captureImage(function(ImageUrl){
var imageItem = "<li class='mui-table-view-cell'><a class='mui-navigate-right'>"+ImageUrl+"</a></li>";
$("#imageList").append(imageItem);
plus.io.resolveLocalFileSystemURL(ImageUrl,function(entry){
$("#imgpath").attr('src',entry.fullPath);
});
},function(e){
alert(e.message);
console.log(e.message);
},{filename:"_doc/photo/"});
});
$("#oVideo").bind('tap',function(){
var camera = plus.camera.getCamera();
camera.startVideoCapture(function(ImageUrl){
var imageItem = "<li class='mui-table-view-cell'><a class='mui-navigate-right'>"+ImageUrl+"</a></li>";
$("#imageList").append(imageItem);
plus.io.resolveLocalFileSystemURL(ImageUrl,function(entry){
$("#videoC").attr('src',entry.fullPath);
});
},function(e){
alert(e.message);
console.log(e.message);
},{filename:"_doc/video/"});
});
});
</script>
摄像头的管理(camera) ---- HTML5+的更多相关文章
- 在Ubuntu平台上创建Cordova Camera HTML5应用
在这篇文章中,我们将具体介绍怎样使用Cordova Camera HTML5 应用.很多其它关于Cordova的开发指南,开发人员能够參考文章"the Cordova Guide" ...
- 摄像头标定GML Camera Calibration
摄像头标定GML Camera Calibration GML Camera Calibration官方版是一款十分优秀出色的相机标定软件,GML Camera Calibration官方版界面友好, ...
- 摄像头(4)用Camera和SurfaceView自定义拍照程序
定制拍照程序的基本步骤 1,打开照相机:Camera.open 这是独占方式打开的 2,创建SurfaceView对象 多缓冲,多线程view 3,添加回调事件监听器(SurfaceHolder.ad ...
- Html5 <video>实现摄像头监控问题:html5并不支持rtsp协议,所以使用vlc进行转码,将rtsp转http流,这样<video>才可以直接播放
今天在写html5中播放旷视C2摄像头视频监控的功能,查了很多资料,才发现Html5 <video>并不支持rtsp协议.后来查到使用第三方转码才得以实现. 这里把方法写下来分享给大家. ...
- 图书管理之HTML5压缩旋转裁剪图片总结
整体思路 : 在移动端压缩图片并且上传主要用到filereader.canvas 以及 formdata 这三个h5的api.逻辑并不难.整个过程就是: (1)用户使用input file上传图片的 ...
- 手机相册管理(gallery) ---- HTML5+
模块:gallery Gallery模块管理系统相册,支持从相册中选择图片或视频文件.保存图片或视频文件到相册等功能.通过plus.gallery获取相册管理对象. 管理我们手机上用到的相册:选择图片 ...
- 系统事件管理(Events) ---- HTML5+
模块:events Events模块管理客户端事件,包括系统事件,如扩展API加载完毕.程序前后台切换等. 比如说:网络的链接的和断开这种事件,系统从前台走到后台这种事件: 不包括:点击和滑动页面事件 ...
- 设备信息的管理(Device) ---- HTML5+
模块:Device Device模块管理设备信息,用于获取手机设备的相关信息,如IMEI.IMSI.型号.厂商等.通过plus.device获取设备信息管理对象. 应用场景:打电话,铃声提醒,震动提醒 ...
- [Unity3D][Vuforia][ios]使用vuforia的unity3d库在ios中摄像头只显示黑色,不显示摄像头,NO CAMERA的解决方案
注:我使用的是Vuforia 4.0SDK Unity3D5.0版本,跑的ios系统为8.1 我在Vuforia官方讨论贴子中看到这其实是新手都会遇到的问题 贴子地址: https://develop ...
随机推荐
- JS-easyui 扩展easyui.datagrid,添加数据loading遮罩效果代码
(function (){ $.extend($.fn.datagrid.methods, { //显示遮罩 loading: function(jq){ return jq.each(functio ...
- 一遍记住Java常用的八种排序算法与代码实现
1.直接插入排序 经常碰到这样一类排序问题:把新的数据插入到已经排好的数据列中. 将第一个数和第二个数排序,然后构成一个有序序列 将第三个数插入进去,构成一个新的有序序列. 对第四个数.第五个数……直 ...
- 下面关于XML叙述不正确的是( )
A.XML标记必须关闭 B.XML是大小写敏感的 C.XML文件只能跟DTD文件一块使用 D.XML和XSL结合可以在浏览器上显示 解答:C
- Android检测Cursor泄漏的原理以及使用方法(转)
简介: 本文介绍如何在 Android 检测 Cursor 泄漏的原理以及使用方法,还指出几种常见的出错示例.有一些泄漏在代码中难以察觉,但程序长时间运行后必然会出现异常.同时该方法同样适合于其他需要 ...
- QHeaderView的点击和双击事件
QTablewidget的horizontalHeader() 和 verticalHeader() 得到的表头:QHeaderView 点击事件的触发函数: sectionClicked(int) ...
- Gray Code - 格雷码
基本概念 格雷码是一种准权码,具有一种反射特性和循环特性的单步自补码,它的循环.单步特性消除了随机取数时出现重大误差的可能,它的反射.自补特性使得求反非常方便.格雷码属于可靠性编码,是一种错误最小化的 ...
- Bash 脚本 getopts为什么最后一个參数取不到
看以下的Bash脚本: #!/bin/bash interval=0 count=0 pid="" while getopts "p:d:n" arg do c ...
- SharePoint Error occurred in deployment step 'Recycle IIS Application Pool': 0x80070005:拒绝访问
错误出现的前提:多个用户在一台机器上做开发,使用非系统管理员账号时会出现,因为一般创建网站集时指定管理员为系统管理员: 使用 Visual Studio 2010 部署时报错:Error occurr ...
- ReSharper插件功能介绍
ReSharper是一款功能非常强悍的Visual Studio的辅助插件,这款插件可用于C#,VB.net,XML,Asp.net,XAML,和构建脚本.ReSharper 9.1版本大改进对 Ja ...
- 教您如何在Word的mathtype加载项中修改章节号
在MathType数学公式编辑器中,公式编号共有五部分内容:分别是章编号(Chapter Number).节编号(Section Number).公式编号(Equation Number).括号(En ...