2016-10-13 00:16:48 点击量:10 标签: 收藏本文
摄像头激活后,持续检测与之关联的Video对象是否在播放(即每秒帧数)
- btnCheck.addEventListener(MouseEvent.CLICK,btnCheckClick);
- var cam:Camera;
- var video:Video;
- var intervalId:uint;
- var intelvalTimes:uint=0;
- function btnCheckClick(e:MouseEvent) {
- cam=Camera.getCamera();
- if (cam==null) {
- lblResult.text="极酷播放器提示未安装摄像头!";
- return;
- }
- cam.addEventListener(StatusEvent.STATUS, statusHandler);
- cam.addEventListener(ActivityEvent.ACTIVITY,camActivityHandler);
- video=new Video(cam.width,cam.height);
- //trace("视频宽度:" + cam.width + ",视频高度:" + cam.height);
- video.x=10;
- video.y=40;
- video.attachCamera(cam);//执行这句时,flash才会弹出摄像头是否允许使用提示框
- }
- //极酷播放器提示摄像头有活动时,被触发
- function camActivityHandler(e:ActivityEvent) {
- trace(e);
- intervalId=setInterval(checkCallBack,100);
- }
- function checkCallBack():void {
- intelvalTimes+=1;
- trace(intelvalTimes);
- if (cam.currentFPS>0) {
- lblResult.text="摄像头工作正常!";
- clearInterval(intervalId);
- addChild(video);//加载到当前舞台中
- } else {
- if (intelvalTimes>=20) {//持续检测2秒,仍然无图象的话,认为"设备无法使用(占用中)"
- lblResult.text="设备无法使用(有可能被占用)";
- clearInterval(intervalId);
- }
- }
- }
- //极酷播放器提示用户选择"同意"或"不允许"使用摄像头时触发
- function statusHandler(e:StatusEvent) {
- trace(e);
- if (e.code=="Camera.Muted") {
- lblResult.text="您不允许使用摄像头!";
- } else if (e.code == "Camera.Unmuted") {
- lblResult.text="摄像头视频获取中...";
- }
- }
作者:菩提树下的杨过出处:http://yjmyzz.cnblogs.com
我们是一家提供综合软件外包与弱电工程服务的技术公司。
业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。
公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室