简介
讲述码率控制的具体步骤。
前面的两篇文章:
码率控制总结—简介,作用,目标及衡量标准
码率控制总结—相关对象
步骤
码率控制的两个步骤:
- 对给定的编码单位分配特定的bit
- 通过模型和给定的bit,计算出编码参数进行编码
编码单位,指的是视频中的组织结构,和码率控制总结—相关对象中的一样,一般分为
几个值得注意的问题
序列中GOP的划分
目前来说HEVC里面都是固定GOP大小,264中有部分文章提到了adaptive GOP size但是理论性较浅。此问题值得深入探讨。
如何在众多GOP中进行码率分配
这个问题探讨的是GOP级别码率分配的依据。定性的角度来看,依据可以有如下几个:
- 编码前的GOP的视频内容特性
- GOP中帧的相似性
- 不同GOP的复杂度关系
- 编码过程中的budget的修正
- 损有余而补不足,在一定的窗口范围内平衡已编码GOP的超出/不足比特数
GOP分配的具体步骤
目前来说,GOP级的分配都是按照如下步骤进行:
- 根据 码率$bitrate$ 和 总帧数$N_{total}$ 计算 平均每帧的比特$R_{avg,f}$
- 根据 GOP中的帧数$N_{GOP}$ 和 平均每帧的比特$R_{avg,f}$ 计算 GOP的比特数$R_{GOP}$
- 根据 已编码部分实际消耗的比特 修正 GOP的比特数$R_{GOP}$
- 设定 最小的GOP比特数 ,不允许$R_{GOP}$低于这个值