在对客户的摄像头和麦克风进行探测时,有许多的不确定性。例如,客户可能会禁用摄像头,可能有一个以上的摄像头,还可能先允许使用摄像头,再使用“属性”菜单禁用摄像头。因此,前几天升级聊天室程序的时候,就就写了这样一个类来进行处理,还可以方便在使用了摄像头和麦克风的程序中使用。
其中,Checker类仅用于检测摄像头和麦克风状态并返回;Selecter类继承Checker类,它不仅和Checker一样返回状态,同时也回根据当前的状态做出反映。例如,如果禁用了摄像头,就会显示一个按钮,单击可以打开“设置”对话框。只有当允许使用摄像头时,此按钮才会消失。如果有一个以上的摄像头,则会显示一个下拉列表并提供选择按钮。
用法可以看下面的示例,还提供了一些方法大家可以自行察看as文件。其中,检测麦克风的功能还不完善。
效果展示:
不知何故,在编辑状态下可以看到的Flash在论坛前台却看不到,如果大家需要看效果展示,可以去这里:http://www.zengrong.net/?p=212
使用示例:
import cn.mediasky.media.*;
//建立selecter实例,必须使用main方法创建。
//四个参数分别为,selecter上级的影片剪辑,Depth,x位置,y位置
var my_selecter = Selecter.main(_root, 0, 50,20);
//注册为侦听器
my_selecter.addListener(_root);
//检测摄像头状态
my_selecter.checkCam();
//处理摄像头状态
function onCamStatus(iInfo:Info):Void{
if(iInfo.code == "UnMuted"){
_root.my_video.attachVideo(iInfo.cam);
}else{
_root.my_video.clear();
}
} 下载示例和类文件:
media_checker.zip
本文转自:http://www.5uflash.com/flashjiaocheng/Flashyingyongkaifa/780.html