1.I片中的mb_type
主要有三类 I_4x4 ,Intra_16x16_x_y_z ,I_PCM.
Intra_4x4使用帧内4x4预测,Intra_16x16表示使用帧内16x16预测,xyz分别代表帧内16x16的预测模式,色度cbp,亮度cbp的值。cbp是子宏块(8x8)残差的编码方式。
2.P片中mb_type
P_L0_16X16, P_L0_L0_16X18, P_L0_L0_8X16, P_8X8 ,P_8X8ref0,P_Skip
P片中mb_type属于[0,4]时参见 上面五个类型,属于[5-30]时,参见I片中的mb_type,并用mb_type值减5来进行查找。
其中P_8x8ref0的语义与P_8x8相同,区别是对于P_8x8ref0,比特流中没有参考索引(ref_idx_l0)的语法元素,且对应所有宏块的子宏块的ref_idx_l0[ mbPartIdx ]推导后应该等于0(其中mbPartIdx的索引值为0..3)。
而ref_idx_l0[ mbPartIdx]用参考帧队列 L0 进行预测,即前向预测时,参考图像在参考帧队列中的序号。其中 mbPartIdx 是宏块分区的序号。 如 果 当 前 宏 块 是非场宏块 , 则ref_idx_l0[ mbPartIdx ] 值的范围是0到 num_ref_idx_l0_active_minus1。 否则,如果当前宏块是场宏块,(宏块所在图像是场,当图像是帧场自适应时当前宏块处于场编码的宏块对),ref_idx_l0[ mbPartIdx]值的范围是 0 到 2*num_ref_idx_l0_active_minus1 + 1,如前所述,此时参考帧队列的帧都将拆成场,故参考队列长度加倍。
3.B片中的mb_type
B_Direct_16x16 B_X_16X16 B_X_Y_16x8 B_X_Y_8x16 B_8X8 B_Skip(direct模式)
参考自毕厚杰书P174