web flash推流h264视频取消cbr

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

初次设置代码以下:编码

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检测文件属性以下:spa


第二次设置以下:code

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检测文件属性以下:orm


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

相关文章
相关标签/搜索