[AS3]as3.0判断用户是否安装摄像头的源代码
在尝试对 Camera 实例使用任何方法或属性之前,您需要验证用户是否已安装了摄像头。检查用户是否已安装摄像头有两种方式:
检查静态 Camera.names 属性,该属性包含可用摄像头名称的数组。此数组通常具有一个或几个字符串,因为多数用户不太可能同时安装多个摄像头。以下代码演示如何检查 Camera.names 属性以查看用户是否具有可用的摄像头:
- if (Camera.names.length > 0)
- {
- trace("User has at least one camera installed.");
- var cam:Camera = Camera.getCamera(); // cuplayer提示:Get default camera.
- }
- else
- {
- trace("User has no cameras installed.");
- }
检查静态 Camera.getCamera() 方法的返回值。如果没有摄像头可用或未安装摄像头,则此方法将返回 null,否则返回对 Camera 对象的引用。以下代码演示如何检查 Camera.getCamera() 方法以查看用户是否具有可用的摄像头:
- var cam:Camera = Camera.getCamera();
- if (cam == null)
- {
- trace("User has no cameras installed.");
- }
- else
- {
- trace("User has at least 1 camera installed.");
- }
由于 Camera 类未扩展 DisplayObject 类,因此无法使用 addChild() 方法将其直接添加到显示列表。为了显示摄像头捕获的视频,您需要创建一个新的 Video 对象并调用该 Video 实例的 attachCamera() 方法。
以下代码片断演示在存在摄像头的情况下如何附加摄像头;如果不存在摄像头,应用程序将不显示任何内容:
- var cam:Camera = Camera.getCamera();
- if (cam != null)
- {
- var vid:Video = new Video();
- vid.attachCamera(cam);
- addChild(vid);
- }
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例