zoukankan      html  css  js  c++  java
  • web flash推流h264视频取消cbr

    flash as3.0 推视频H264
    关于视频质量

    初次设置代码如下:

    h264Setting.setProfileLevel(H264Profile.BASELINE, H264Level.LEVEL_3);
    media_stream.videoStreamSettings = h264Setting;
    camera.setKeyFrameInterval(av_gop);
    camera.setMode(av_normal_width, av_normal_height, Number(av_normal_fps));
    camera.setQuality(80000, 100);

    编码后的视频在有晃动的情况下花屏轻微马赛克,mediainfo检测文件属性如下:


    第二次设置如下:

    h264Setting.setProfileLevel(H264Profile.BASELINE, H264Level.LEVEL_3);
    media_stream.videoStreamSettings = h264Setting;
    camera.setKeyFrameInterval(av_gop);
    camera.setMode(av_normal_width, av_normal_height, Number(av_normal_fps));
    camera.setQuality(0, 100);

    编码后的视频在有晃动的情况下也是正常的,不过码率浮动上升,mediainfo检测文件属性如下:


    关于setQuality的官方解释:
    设置每秒的最大带宽或当前输出视频输入信号可以使用的画面质量。
    要指定带宽,请为带宽传递一个值,并为品质传递 0。
    要指定品质,请为带宽传递 0,并为品质传递一个值。
    带宽值和品质值均由 Camera 参数覆盖。
    flash as中关于H264编码,在flash 10以前默认是VBR,之后默认改成CBR。
    所以,想设置CBR,camera.setQuality(80000, 0);
    想设置VBR,camera.setQuality(0, 100);
    两个同时设置,CBR生效。

  • 相关阅读:
    预定义规则 取范围数据
    oracle table 数组的赋值方法
    java 缓存读写
    webpack
    vscode setting
    webpack babel
    共享你的vscode配置
    github API很丰富
    tips
    todo
  • 原文地址:https://www.cnblogs.com/zzugyl/p/9105885.html
Copyright © 2011-2022 走看看