本文主要是介绍h.264 B条带预测模式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
B条带的预测模式分为 直接模式,单向预测方式,多假设预测方式,帧内预测方式
其中直接预测模式分为空间和时间两种
Direct模式首先需要一个mvcol(co-located mv,详细说明看标准)
对于空间方式,一般使用当前帧中A、B、C(D)的空间预测结果,但如果mvcol很小,x、y方向的绝对值都小于等于1/4象素,就抛弃空间预测的结果,把当前的mv设置为0向量
对于时间模式,则完全由mvcol预测。其前向参考帧是mvcol参考的那一帧,后向参考帧是mvcol所在的那一帧(因此ref_idx_l1总为0),前向mv和后向mv根据时间间隔插值得出。
比如:当前是B Slice的时间模式direct,当前的POC为4,当前宏块序号为0,block4x4序号为0
后向参考list中的第一帧(这个picture称为colPic)的POC为6,这一帧的第0个MB的第0个block4x4的前向mv为(3,3)(这个mv就是mvcol),这个mv参考的图像的POC是0(或者说“当年”解码这一帧的时候,这个地方的参考帧POC为0)。那么:
当前前向mv为(2,2),后向mv为(-1,-1)
还有很多细节问题好好看标准吧,这个地方是比较复杂。
这篇关于h.264 B条带预测模式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!