1 aligned(8) class AVCDecoderConfigurationRecord { 2 unsigned int(8) configurationVersion = 1; 3 unsigned int(8) AVCProfileIndication; 4 unsigned int(8) profile_compatibility; 5 unsigned int(8) AVCLevelIndication; 6 bit(6) reserved = ‘111111’b; 7 unsigned int(2) lengthSizeMinusOne; 8 bit(3) reserved = ‘111’b; 9 unsigned int(5) numOfSequenceParameterSets; 10 for (i=0; i< numOfSequenceParameterSets; i++) { 11 unsigned int(16) sequenceParameterSetLength ; 12 bit(8*sequenceParameterSetLength) sequenceParameterSetNALUnit; 13 } 14 unsigned int(8) numOfPictureParameterSets; 15 for (i=0; i< numOfPictureParameterSets; i++) { 16 unsigned int(16) pictureParameterSetLength; 17 bit(8*pictureParameterSetLength) pictureParameterSetNALUnit; 18 } 19 if( profile_idc == 100 || profile_idc == 110 || 20 profile_idc == 122 || profile_idc == 144 ) 21 { 22 bit(6) reserved = ‘111111’b; 23 unsigned int(2) chroma_format; 24 bit(5) reserved = ‘11111’b; 25 unsigned int(3) bit_depth_luma_minus8; 26 bit(5) reserved = ‘11111’b; 27 unsigned int(3) bit_depth_chroma_minus8; 28 unsigned int(8) numOfSequenceParameterSetExt; 29 for (i=0; i< numOfSequenceParameterSetExt; i++) { 30 unsigned int(16) sequenceParameterSetExtLength; 31 bit(8*sequenceParameterSetExtLength) 32 sequenceParameterSetExtNALUnit; 33 } 34 } 35 }