• Camera类


    Camera类

    使用 Camera 类可从连接到运行 Flash Player 的计算机的摄像头中 捕获视频。 使用 Video 类可在本地监视视频。 使用 NetConnection  和 NetStream 类可将视频传输到 Flash Media Server。 Flash Media  Server 可以将视频流发送到其它服务器,并向运行 Flash Player 的其它客户端广播此视频流。   若要创建或引用 Camera 对象,请使用 getCamera() 方法。

    公共属性:

    activityLevel : Number--摄像头正在检测的运动量。

    bandwidth : int--当前输出视频输入信号可以使用的最大带宽, 以字节为单位。

    constructor : Object--对类对象或给定对象实例的构造函数的引用。

    currentFPS : Number--摄像头捕获数据的速率,以每秒帧数为单位。

    fps : Number--摄像头捕获数据的最大速率,以每秒帧数为单位。 

    height : int--当前捕获高度,以像素为单位。

    index : int--从零开始的整数,指定由 names 属性返回的数组中所 反映的摄像头的索引。

    keyFrameInterval : int--完整传输而没有使用视频压缩算法进行插 值处理的视频帧(称为关键帧)数。 

    loopback : Boolean--指示在本地查看摄像头所捕获的图像时是进行 压缩和解压缩 (true),就像使用 Flash Media Server 进行实时传输 一样,还是不进行压缩 (false)。

    motionLevel : int--调用 activity 事件所需的运动量。

    motionTimeout : int--摄像头停止检测运动的时间与调用 activity 事件的时间之间相差的毫秒数。 

    muted : Boolean--布尔值,指示用户在 Flash Player 的“隐私”对 话框中是拒绝访问摄像头 (true) 还是允许访问 (false)。

    name : String--由摄像头硬件返回的当前摄像头的名称。

    names : Array--[静态]字符串数组,指示所有可用的摄像头名称, 而不显示 Flash Player 的“隐私”对话框。

    prototype : Object--[静态] 对类或函数对象的原型对象的引用。

    quality : int--所需的图片品质级别,该级别是由应用于每个视 频帧的压缩量决定的。

    width : int--当前捕获宽度,以像素为单位。

    公共方法:

    getCamera(name:String = null):Camera--[静态] 返回对用于捕获视 频的 Camera 对象的引用。

    setKeyFrameInterval(keyFrameInterval:int):void--指定进行完整传输 而不由视频压缩算法进行插值处理的视频帧(称为关键帧)。 setLoopback(compress:Boolean = false):void--指定在本地查看摄像 头时是否使用压缩视频流。

    setMotionLevel(motionLevel:int, timeout:int = 2000):void--指定调度  activity 事件所需的运动量。

    setQuality(bandint, quality:int):void--设置每秒的最大带宽或 当前输出视频输入信号所需的画面质量 setMode(int, height:int, fps:Number, favorArea:Boolean = true):void 将摄像头的捕获模式设置为最符合指定要求的本机模式。

    实例如下:

     1 package
     2 {
     3  import flash.display.Bitmap;
     4  import flash.display.BitmapData;
     5  import flash.display.Sprite;
     6  import flash.events.ActivityEvent;
     7  import flash.events.Event;
     8  import flash.geom.Matrix;
     9  import flash.media.Camera;
    10  import flash.media.Video;
    11  
    12  public class Main extends Sprite
    13  {
    14   private var cam:Camera = Camera.getCamera();
    15   private var vid:Video;
    16   private var bt:Bitmap = new Bitmap();
    17   private var btd:BitmapData;
    18   public function Main()
    19   {
    20     if(stage == null)
    21     {
    22     init(null); 
    23    }else
    24    {
    25     addEventListener(Event.ADDED_TO_STAGE,init);
    26    }
    27   }
    28   private function init(e:Event):void
    29   {
    30    removeEventListener(Event.ADDED_TO_STAGE,init);
    31    vid = new Video(400,400);
    32    btd = new BitmapData(400,400,false)
    33    bt.bitmapData = btd;
    34    this.addChild(bt);
    35    addEventListener(Event.ENTER_FRAME,onEnterFrameHandler);
    36    cam.setMode(400,400,15);
    37    vid.attachCamera(cam);
    38    cam.setMotionLevel(60,2000);
    39    cam.addEventListener(ActivityEvent.ACTIVITY,onActivityhandler);
    40   }
    41   
    42   protected function onActivityhandler(event:ActivityEvent):void
    43   {
    44     switch (event.activating)
    45     {
    46       case true:
    47        trace("动了"+cam.activityLevel);
    48        break;
    49       case false:
    50        trace("停止"+ cam.activityLevel)
    51        break;
    52       
    53     }
    54   }
    55   
    56   protected function onEnterFrameHandler(event:Event):void
    57   {
    58     btd.draw(vid,new Matrix(-1,0,0,1,400,0));
    59   }
    60  }
    61 }

    转自:http://www.cnblogs.com/--2174521/archive/2012/11/07/2763363.html

  • 相关阅读:
    浅谈 facebook .net sdk 应用
    数据库中各种字符串的截取函数
    初、中、高级测试工程师面试题汇总(附答案)
    包管理器 scoop
    ModuleNotFoundError: No module named 'pymouse'解决办法
    Python 正则表达式(分组)
    7个Python实战项目代码,让你分分钟晋级大神!
    经典SQL查询题目
    linux中软件的安装和卸载方法
    测试常用工具
  • 原文地址:https://www.cnblogs.com/Sharley/p/5613472.html
Copyright © 2020-2023  润新知