zoukankan      html  css  js  c++  java
  • Flex中设置Camera的视频清晰质量的最佳配合

     今天需要设置Flex中的Camera组件的一些属性,后来发现清晰度不是很高,于是捣鼓了上午半天,设置了很多的参数,竟然发现手册上就是有现成的一些设置方法,郁闷!不过我还是专门设置了几个有用和必要的属性,为自己的程序中应用,其实很简单!
    以此为例:
    Camera.setMode(320,240,15);

    就是要设置一个宽320、高240、播放速率是15fps,他的带宽消耗:

    (320*240*15)/1000000 = 1.2(Mbps) = 1152000(Bps)//1000000是1024*1024的取舍写法也即:1000*1000而获得的;

     关于所消耗的带宽,换成我们能看懂的带宽计算就是:

    320*240*15/8000 = 144K/s (也即每秒144K)//由此可见,画面的尺寸和播放率的播放效果是跟带宽有一定的关系的~

    接下来可以这样设置视频的质量:
    由于在设置的时候function setQuality(bandint, quality:int)使用的单位是不一样的,bandwidth使用的是kbps,而不是Bps,要转换(8 bits =1 byte ),所以要转换一下1152000/8 = 144000 (kbps) ,
    接下来要设置播放的质量时候必须这样设置

    Camera.setQuality(144000,85);// (85为常规的视频质量,最好就采用这个数值)

    接 下来就是设置传输的视频关键帧了,可以根据实际的带宽情况来设置,记住:关键帧数值越小带宽使用率越大,反之关键帧数值越大带宽使用率越小。值 例如:1 表示每一帧都是关键帧,那么就是每帧都要传输出去,就会加大带宽的使用了,依此类推。可接受值为 1 至 48。对于画面质量要求不高的话,可以设置到48;对于质量要求很高的话,最好设置到5-10左右;

    Camera.setKeyFrameInterval(48);

    对于摄像头来说,最佳的成像比例是4:3,所以最好是将所成像的比例按照这个最小比例设置!

    下面是网络摄像头和数字视频摄像头内置的典型设置:

    160 x 120
    176 x 144
    320 x 240
    360 x 240
    352 x 288
    640 x 480

    本地视频捕捉分辨率一般都设置为4:3(宽和高)的比例。虽然没有操作比例的必要,当你入门它不是一个坏的想法。用4:3的比例,您能够优化你的摄像头看到的东西。


    一些Flex的Camera的常规设定:

    打开摄像头:
    Camera camera = Camera.getCamera();

    //将摄像头的捕获模式设置为最符合指定要求的本机模式.
    camera.setMode(240,180,15);

    //指定进行完整传输而不由视频压缩算法进行插值处理的视频帧(称为关键帧)。camera.setKeyFrameInterval(60);

    //设置每秒的最大带宽或当前输出视频输入信号所需的画面质量
    camera.setQuality(144,85 );
    Video video = new Video(camera.width*2, camera.height*2);

    //正在捕获视频数据的 Camera 对象
    video.attachCamera(camera);


    关闭摄像头:

    //如果 getCamera() 返回 null,则表明摄像头正由另一个应用程序使用,或者系统上没有安装摄像头。
    camera = Camera.getCamera(null);
    camera = null;

    //正在捕获视频数据的 Camera 对象。 若要切断与该 Video 对象的连接,请传递 null
    video.attachCamera(null);

  • 相关阅读:
    Sublime Text安装Package Control
    HTTP,FTP,TCP,UDP及SOCKET
    Oracle数据库的导入导出
    C#.NET中数组、ArrayList和List三者的区别
    一道有趣的逻辑面试题(数独)
    C#常用命名空间
    C# Dictionary已知value获取对应的key
    C#记录程序耗时的方法
    有return语句情况下,try-catch-finally的执行顺序
    C# 拷贝数组的几种方法
  • 原文地址:https://www.cnblogs.com/chenhaib/p/2427419.html
Copyright © 2011-2022 走看看