Changeset 495 in 3DVCSoftware for branches/HTM-DEV-0.3-dev0/source/Lib/TLibDecoder/TDecCAVLC.cpp
- Timestamp:
- 25 Jun 2013, 22:11:57 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-DEV-0.3-dev0/source/Lib/TLibDecoder/TDecCAVLC.cpp
r492 r495 560 560 UInt uiCode; 561 561 READ_CODE( 4, uiCode, "sps_video_parameter_set_id"); pcSPS->setVPSId ( uiCode ); 562 #if H_MV 563 if ( pcSPS->getLayerId() == 0 ) 564 { 565 #endif 562 566 READ_CODE( 3, uiCode, "sps_max_sub_layers_minus1" ); pcSPS->setMaxTLayers ( uiCode+1 ); 563 567 READ_FLAG( uiCode, "sps_temporal_id_nesting_flag" ); pcSPS->setTemporalIdNestingFlag ( uiCode > 0 ? true : false ); … … 566 570 // sps_temporal_id_nesting_flag must be 1 when sps_max_sub_layers_minus1 is 0 567 571 assert( uiCode == 1 ); 568 } 569 572 } 570 573 parsePTL(pcSPS->getPTL(), 1, pcSPS->getMaxTLayers() - 1); 574 #if H_MV 575 } 576 #endif 571 577 READ_UVLC( uiCode, "sps_seq_parameter_set_id" ); pcSPS->setSPSId( uiCode ); 572 578 READ_UVLC( uiCode, "chroma_format_idc" ); pcSPS->setChromaFormatIdc( uiCode ); … … 726 732 #else 727 733 READ_FLAG( uiCode, "inter_view_mv_vert_constraint_flag" ); pcSPS->setInterViewMvVertConstraintFlag(uiCode == 1 ? true : false); 728 READ_FLAG( uiCode, "sps_extension2_flag");729 734 //// sps_extension_vui_parameters( ) 730 735 if( pcSPS->getVuiParameters()->getBitstreamRestrictionFlag() ) … … 747 752 //// sps_extension_vui_parameters( ) END 748 753 READ_UVLC( uiCode, "sps_shvc_reserved_zero_idc" ); 749 754 READ_FLAG( uiCode, "sps_extension2_flag"); 750 755 if ( uiCode ) 751 756 { … … 756 761 } 757 762 #else 763 758 764 UInt uiCamParPrecision = 0; 759 765 Bool bCamParSlice = false; … … 839 845 #if H_MV 840 846 assert( pcVPS->getVpsMaxLayerId() < MAX_VPS_NUH_LAYER_ID_PLUS1 ); 841 READ_CODE( 6, uiCode, "vps_max_ nuh_layer_id" ); pcVPS->setVpsMaxLayerId( uiCode );847 READ_CODE( 6, uiCode, "vps_max_layer_id" ); pcVPS->setVpsMaxLayerId( uiCode ); 842 848 843 849 READ_UVLC( uiCode, "vps_max_num_layer_sets_minus1" ); pcVPS->setVpsNumLayerSetsMinus1( uiCode ); … … 950 956 READ_CODE( 6, uiCode, "vps_num_profile_tier_level_minus1" ); pcVPS->setVpsNumProfileTierLevelMinus1( uiCode ); 951 957 952 for( Int i = 1; i <= pcVPS->getVpsNum berLayerSetsMinus1(); i++ )958 for( Int i = 1; i <= pcVPS->getVpsNumProfileTierLevelMinus1(); i++ ) 953 959 { 954 960 READ_FLAG( uiCode, "vps_profile_present_flag[i]" ); pcVPS->setVpsProfilePresentFlag( i, uiCode == 1 ); … … 986 992 { 987 993 READ_UVLC( uiCode, "output_layer_set_idx_minus1[i]" ); pcVPS->setOutputLayerSetIdxMinus1( i, uiCode ); 988 for( Int j = 0; j < = pcVPS->getNumLayersInIdList( j ); j++ )994 for( Int j = 0; j < pcVPS->getNumLayersInIdList( j ) - 1; j++ ) 989 995 { 990 996 READ_FLAG( uiCode, "output_layer_flag" ); pcVPS->setOutputLayerFlag( i, j, uiCode == 1 ); 991 } 997 } 998 } 999 if ( pcVPS->getProfileLevelTierIdxLen() > 0 ) 1000 { 992 1001 READ_CODE( pcVPS->getProfileLevelTierIdxLen(), uiCode,"profile_level_tier_idx[ i ]" ); pcVPS->setProfileLevelTierIdx( i , uiCode ); 993 1002 } … … 1001 1010 for( Int j = 0; j < i; j++ ) 1002 1011 { 1003 READ_CODE( pcVPS->getDirectDepTypeLenMinus2( ) + 2, uiCode, "direct_dependency_type[i][j]" ); pcVPS->setDirectDependencyType( i, j , uiCode); 1012 if (pcVPS->getDirectDependencyFlag( i, j) ) 1013 { 1014 READ_CODE( pcVPS->getDirectDepTypeLenMinus2( ) + 2, uiCode, "direct_dependency_type[i][j]" ); pcVPS->setDirectDependencyType( i, j , uiCode); 1015 } 1004 1016 } 1005 1017 } … … 1156 1168 rps->setNumberOfPictures(0); 1157 1169 rpcSlice->setRPS(rps); 1170 #if H_MV 1171 rpcSlice->setEnableTMVPFlag(false); 1172 #endif 1158 1173 } 1159 1174 else
Note: See TracChangeset for help on using the changeset viewer.