( MbaffFrameFlag && CurrMbAddr % 2) == 0) moreDataFlag =1 else { end_of_slice_flag ae(v) moreDataFlag = !end_of_slice_flag CurrMbAddr=NextMbAddress( CurrMbAddr ) } while( moreDataFlag ) G.7.3.5 Macroblock layer syntax The syntax table is specified in clause 7.3.5. Rec. ITU-T H.264 (01/2012) G.7.3.5.1 Macroblock prediction syntax The syntax table is specified in clause 7.3.5.1. G.7.3.5.2 Sub-macroblock prediction syntax The syntax table is specified in clause 7.3.5.2. G.7.3.5.3 Residual data syntax The syntax table is specified in clause 7.3.5.3. G.7.3.5.3.1 Residual luma syntax The syntax table is specified in clause 7.3.5.3.1. G.7.3.5.3.2 Residual block CAVLC syntax The syntax table is specified in clause 7.3.5.3.2. G.7.3.5.3.3 Residual block CABAC syntax The syntax table is specified in clause 7.3.5.3.3. G.7.3.6 Macroblock layer in scalable extension syntax macroblock_layer_in_scalable_extension() { Descriptor if( InCropWindow(CurrMbAddr) && adaptive_base_mode_flag) base_mode_flag u(1) ae(v) if( !base_mode_flag) mb_type ue(v)|ae(v) if( (mb_type == I_PCM) { while(!byte_aligned()) pcm_alignment_zero_bit for(i=0;i<256;it+) pcm_sample_luma|i for(i=0;i<2*MbWidthC*MbHeightC; i++) pcm_sample_chroma[i] } else { if( !base_mode_flag { noSubMbPartSizeLessThan8x8Flag=1 if(mb_type !=I_NxN && MbPartPredMode( mb_type, 0) != Intra_16x16 && NumMbPart(mb_type) ==4){ sub_mb_pred_in_scalable_extension(mb_type) for( mbPartIdx=0;mbPartIdx<4;mbPartIdx++) = if(sub_mb_type[mbPartIdx] !=B_Direct_8x8)& if( NumSubMbPart(sub_mb_type[mbPartIdx ])>1) toSubMbPartSizeLessThan8x8Flag=( } else (!direct_8x8_inference_flag) noSubMbPartSizeLessThan8x8Flag= } else { if( transform_8x8_mode_flag && mb_type==I_NxN) transform_size_8x8_flag u(1) ae(v) mb_pred_in_scalable_extension(mb_type) Rec. ITU-T H.264 (01/2012) if( adaptive residual_prediction_flag && slice_type !=EI && InCropWindow(CurrMbAddr) && (base_mode_flag II (MbPartPredMode( mb_type, 0) != Intra 16x16 && MbPartPredMode(mb_type,0)!=Intra_8x8 && MbPartPredMode(mb_type,0)!Intra_4 4x4) ) residua