摘要: X264编码器平均比特率(ABR)码率控制算法在单线程下,可以利用前面所有帧的实际偏差来调整量化参数(QP)。但在多线程下,当前帧之前仍有尚未编码完的帧,因此只能用部分已编码帧的实际偏差来调整QP,有可能使实际码率严重偏离目标码率。针对该问题,提出一种改进
的ABR多线程码率控制方法。该方法通过当前帧之前已编码帧的实际偏差来估计未编码帧的偏差,得到类似单线程下当前帧之前所有帧的偏差,用以调整QP,达到提高多线程码率和控制精度的目的。实验结果表明,改进后视频流的实际码率更接近目标码率,码率误差最高可降
低2.27%,平均码率曲线也更为平滑。
关键词:
视频编码,
平均比特率,
码率控制,
多线程,
码率精度
Abstract: In one thread,Average Bit Rate(ABR) control algorithm of X264 encoder can use the deviation of all frames to adjust Quantization Parameter(QP).But in multi-threads,it has some frames before current one that is not encoded,so it only uses deviation of frames that have been encoded to adjust QP,which results real bit deviate target bit severely.To solve this problem,this paper proposes a method to optimize the rate control under multi-threads conditions.This method estimates the deviation of non-encoded frames based on the actual deviation of encoded frames,and achieves deviation of all frames like in one thread,then uses all frames’ deviations to adjust the current frame’s QP,and gets the goal of increasing accuracy of rate controlling.Experimental results show that the actual bit rate produced by this method is more close to the target one,rate error reduces by up to 2.27%,and the bit rate curve appears steadier than ever.
Key words:
video coding,
Average Bit Rate(ABR),
rate control,
multi-threads,
rate accuracy
中图分类号: