您的位置:首页 > 其它

H.264句法和语法总结(十二)子宏块预测句法

2013-12-10 20:44 337 查看
sub_mb_pred( mb_type ) {

for( mbPartIdx = 0; mbPartIdx < 4; mbPartIdx++ )

// sub_mb_type[ mbPartIdx ] 指明子宏块的预测类型,在不同的宏块类型中这个句法元素的语义不一样。

sub_mb_type[
mbPartIdx ] //表示子宏块的类型

for( mbPartIdx = 0; mbPartIdx < 4; mbPartIdx++ )

if( ( num_ref_idx_l0_active_minus1 > 0 | |

mb_field_decoding_flag ) &&

mb_type != P_8x8ref0 &&

sub_mb_type[ mbPartIdx ] != B_Direct_8x8 &&

SubMbPredMode( sub_mb_type[ mbPartIdx ] ) != Pred_L1 )

ref_idx_l0[
mbPartIdx ] //与宏块预测语法中含义相同

for( mbPartIdx = 0; mbPartIdx < 4; mbPartIdx++ )

if( (num_ref_idx_l1_active_minus1 > 0 | | mb_field_decoding_flag )

&&

sub_mb_type[ mbPartIdx ] != B_Direct_8x8 &&

SubMbPredMode( sub_mb_type[ mbPartIdx ] ) != Pred_L0 )

ref_idx_l1[
mbPartIdx ] //与宏块预测语法中含义相同

for( mbPartIdx = 0; mbPartIdx < 4; mbPartIdx++ )

if( sub_mb_type[ mbPartIdx ] != B_Direct_8x8 &&

SubMbPredMode( sub_mb_type[ mbPartIdx ] ) != Pred_L1 )

for( subMbPartIdx = 0;

subMbPartIdx < NumSubMbPart( sub_mb_type[ mbPartIdx ] );

subMbPartIdx++)

for( compIdx = 0; compIdx < 2; compIdx++ )

mvd_l0[
mbPartIdx ][ subMbPartIdx ][ compIdx ] //mvd_l0与宏块预测语法中含义相同

for( mbPartIdx = 0; mbPartIdx < 4; mbPartIdx++ )

if( sub_mb_type[ mbPartIdx ] != B_Direct_8x8 &&

SubMbPredMode( sub_mb_type[ mbPartIdx ] ) != Pred_L0 )

for( subMbPartIdx = 0;

subMbPartIdx < NumSubMbPart( sub_mb_type[ mbPartIdx ] );

subMbPartIdx++)

for( compIdx = 0; compIdx < 2; compIdx++ )

mvd_l1[
mbPartIdx ][ subMbPartIdx ][ compIdx ] //mvd_l1与宏块预测语法中含义相同

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: