作者:用户dvb51bjajs | 来源:互联网 | 2023-09-17 19:42
flashas3.0推视频H264关于视频质量初次设置代码如下:h264Setting.setProfileLevel(H264Profile.BASELINE,H264Level
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生效。