在视频编码中,有一个模块是码率控制,即通过选择一系列编码参数,使得视频编码后的比特率满足所需要的速率限制,并且使编码失真尽可能小。在实际应用中,存在好几种码率控制方法,分别是CBR、VBR、CRF、CQP、CVBR、ABR:
· CBR(Constant Bitrate,固定码率)
即在码率统计时间内保证编码码率平稳。有Motion发生时,由于码率恒定,只能通过增大QP来减少码字大小,图像质量变差,当场景静止时,图像质量又变好,因此图像质量不稳定。优点是压缩速度快,缺点是每秒流量都相同容易导致空间浪费。多用于网络流媒体视频编码,持续的码率可以保证视频在播放时,不会有卡顿缓冲等现象。
· VBR(Variable Bitrate,动态码率)
即允许在码率统计时间内编码码率波动,从而保证编码图像质量平稳。码率可以随着图像的复杂程度的不同而变化,因此其编码效率比较高,Motion发生时,马赛克很少。码率控制算法根据图像内容确定使用的比特率,图像内容比较简单则分配较少的码率,图像内容复杂则分配较多的码率,这样既保证了质量,又兼顾带宽限制。这种算法在画质相同的前提下,可以缩小文件体积。
· CRF(Constant Rate Factor,固定码率系数)
使用 CBR 和 VBR 时,需要选择一个目标码率,编码器会调整视频质量以达到该目标。这种方法的问题是,如果你对所有视频片段使用了相同的码率阶梯,那么就会在容易编码的视频上浪费很多不必要的带宽。
所以,当使用 CBR 和 VBR 编码时,编码器会调整所需的视频质量进而达到目标码率。相比之下,使用 CRF 编码,选择一种目标质量,编码器会通过调整码率达到该质量水平。CRF 值分布为从 0 到 51,一般来说这个取值越小,视频帧编码质量相对越高,取值为0则是无损压缩。
· CQP(Constant QP,固定质量参数)
每一帧图像在压缩的时候,采用相同的QP值。(QP值决定了量化编码时从像素宏块的原始信息中丢弃多少信息,QP越大压缩率越高同时质量越低,QP越小压缩率越低同时质量越高)
· CVBR(Constrained VariableBit Rate)
VBR的一种改进,兼顾了CBR和VBR的优点:在图像内容静止时,节省带宽,有Motion发生时,利用前期节省的带宽来尽可能地提高图像质量,达到同时兼顾带宽和图像质量的目的。这种方法通常会让用户输入最大码率和最小码率,静止时,码率稳定在最小码率,运动时,码率大于最小码率,但是又不超过最大码率。
· ABR(Average Bitrate,平均码率)
平均比特率,VBR的一种插值参数,是在CBR和VBR两者之间的一种权衡,即设定一段时间的平均码率,在此时间内,对简单、静态的图像分配低于平均码率的码率,对于复杂、大量运动的图像分配高于平均码率的码率;适合网络传输。
版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。