Flex(flash)检测摄像头的3种状态(是否被占用,没安装摄像头,正常)

简介:

在视频程序的编写过程中,我们经常要使用摄像头,在使用摄像头前有必要对摄像头的现有状态做个检测:

1.被占用

2.没安装摄像头

3.正常

camera=Camera.getCamera();

           if (camera == null) 
            { 
               if (Camera.names.length <= 0) 
                { 
                    
                    Alert.show("没安装摄像头"); 
                } 
            } 
            else 
            { 
                this.vdpaly.attachCamera(this.camera); 
                this.isCameraBusy(); 
            }

private function isCameraBusy():void

        { 
            this.intervalId=setInterval(callback,50); 
        }

private function callback():void

{

trace("currentFPS=" + camera.currentFPS.toString());

           if (camera.currentFPS > 0)                

{ //视频设备可用

clearInterval(this.intervalId);

this.isBusyCamera=false;

Alert.show("摄像头正常");

}

else

{

times++;

trace("times=" + times.toString());

                if (times > 30)                    

{ //视频设备忙

clearInterval(intervalId);

this.isBusyCamera=true;

Alert.show("摄像头被占用");

}

}

}

代码说明:

camera == null,那么就是没安装摄像头

如果摄像头被占用,那么camera.currentFPS 肯定不会大 于0,而是等于0
本文转自jiahuafu博客园博客,原文链接http://www.cnblogs.com/jiahuafu/p/4094539.html如需转载请自行联系原作者

jiahuafu

相关文章
|
调度
MacBookPro外接显示器程序全屏状态,另一个显示器就黑屏
MacBookPro外接显示器程序全屏状态,另一个显示器就黑屏
621 0
MacBookPro外接显示器程序全屏状态,另一个显示器就黑屏
|
编解码 算法 计算机视觉
案例分享:Qt内窥镜相机录像程序(打开摄像头、支持多种摄像头、分辨率调整、翻转、旋转、亮度调整、拍照、录像、回放图片、回放录像)
案例分享:Qt内窥镜相机录像程序(打开摄像头、支持多种摄像头、分辨率调整、翻转、旋转、亮度调整、拍照、录像、回放图片、回放录像)
案例分享:Qt内窥镜相机录像程序(打开摄像头、支持多种摄像头、分辨率调整、翻转、旋转、亮度调整、拍照、录像、回放图片、回放录像)
|
移动开发
h5 Video打开本地摄像头和离开页面关闭摄像头
h5 Video打开本地摄像头和离开页面关闭摄像头
|
编解码 监控 Linux
嵌入式Linux下LCD应用编程: 读取摄像头画面完成本地视频监控画面显示
嵌入式Linux下LCD应用编程: 读取摄像头画面完成本地视频监控画面显示
418 0
嵌入式Linux下LCD应用编程: 读取摄像头画面完成本地视频监控画面显示
使用内置摄像头并优化显示结果大图片的方法
使用内置摄像头并优化显示结果大图片的方法
104 0
|
图形学
unity3d 中控制手机前后摄像头切换
闲话少说,上代码,google上搜来的代码,不过里面有bug,不能顺利切换,下面的代码是已经修改过的,经测试,可以正常运行。 using System;using UnityEngine;using System.
1271 0