·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]as3程序判断终端是否已安装摄像头(常用于视频直播)

时间:2016-11-04 14:33酷播
在尝试对 Camera 实例使用任何方法或属性之前,您需要验证用户是否已安装了摄像头[AS3]as3程序判断终端是否已安装摄像头(常用于视频直播)

在尝试对 Camera 实例使用任何方法或属性之前,您需要验证用户是否已安装了摄像头。检查用户是否已安装摄像头有两种方式:

检查静态 Camera.names 属性,该属性包含可用摄像头名称的数组。此数组通常具有一个或几个字符串,因为多数用户不太可能同时安装多个摄像头。以下代码演示如何检查 Camera.names 属性以查看用户是否具有可用的摄像头:

  1. if (Camera.names.length > 0)  
  2. {  
  3.     trace("User has at least one camera installed.");  
  4.     var cam:Camera = Camera.getCamera(); // Get default camera.  
  5. }  
  6. else  
  7. {  
  8.     trace("酷播提示:User has no cameras installed.");  

检查静态 Camera.getCamera() 方法的返回值。如果没有摄像头可用或未安装摄像头,则此方法将返回 null,否则返回对 Camera 对象的引用。以下代码演示如何检查 Camera.getCamera() 方法以查看用户是否具有可用的摄像头:

  1. var cam:Camera = Camera.getCamera();  
  2. if (cam == null)  
  3. {  
  4.     trace("User has no cameras installed.");  
  5. }  
  6. else  
  7. {  
  8.     trace("User has at least 1 camera installed.");  

由于 Camera 类未扩展 DisplayObject 类,因此无法使用 addChild() 方法将其直接添加到显示列表。为了显示摄像头捕获的视频,您需要创建一个新的 Video 对象并调用该 Video 实例的 attachCamera() 方法。

以下代码片断演示在存在摄像头的情况下如何附加摄像头;如果不存在摄像头,应用程序将不显示任何内容:

  1. var cam:Camera = Camera.getCamera();  
  2. if (cam != null)  
  3. {  
  4.     var vid:Video = new Video();  
  5.     vid.attachCamera(cam);  
  6.     addChild(vid);  

 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器