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与宏块预测语法中含义相同
}
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与宏块预测语法中含义相同
}
相关文章推荐
- H.264句法和语法总结(十二)子宏块预测句法
- H.264句法和语法总结(十二)子宏块预测句法
- H.264句法和语法总结(十二)子宏块预测句法
- H.264句法和语法总结(十二)子宏块预测句法
- H.264句法和语法总结(十二)子宏块预测句法
- H.264句法和语法总结(十一)宏块层预测句法
- H.264句法和语法总结(七)加权预测句法
- H.264句法和语法总结(七)加权预测句法
- H.264句法和语法总结(十一)宏块层预测句法
- H.264句法和语法总结(七)加权预测句法
- H.264句法和语法总结(十一)宏块层预测句法
- H.264句法和语法总结(七)加权预测句法
- H.264句法和语法总结(七)加权预测句法
- H.264句法和语法总结(十一)宏块层预测句法
- H.264句法和语法总结(十一)宏块层预测句法
- H.264句法和语法总结(二)NAL层句法
- H.264句法和语法总结(四)图像参数集语义
- H.264句法和语法总结(三)序列参数集层(SPS)句法
- H.264句法和语法总结(三)序列参数集层(SPS)句法
- H.264句法和语法总结(五)片头句法