Changeset 454 in SHVCSoftware for branches/SHM-4.0-dev/source/Lib/TLibDecoder
- Timestamp:
- 8 Nov 2013, 07:59:51 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-4.0-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp
r453 r454 992 992 } 993 993 994 #if SVC_EXTENSION 994 995 #if VPS_EXTNS 995 996 Void TDecCavlc::parseVPSExtension(TComVPS *vps) … … 1121 1122 #if VPS_EXTN_PROFILE_INFO 1122 1123 // Profile-tier-level signalling 1123 #if VPS_PROFILE_OUTPUT_LAYERS1124 1124 READ_CODE( 10, uiCode, "vps_number_layer_sets_minus1" ); assert( uiCode == (vps->getNumLayerSets() - 1) ); 1125 1125 READ_CODE( 6, uiCode, "vps_num_profile_tier_level_minus1"); vps->setNumProfileTierLevel( uiCode + 1 ); 1126 1126 vps->getPTLForExtnPtr()->resize(vps->getNumProfileTierLevel()); 1127 1127 for(Int idx = 1; idx <= vps->getNumProfileTierLevel() - 1; idx++) 1128 #else1129 vps->getPTLForExtnPtr()->resize(vps->getNumLayerSets());1130 for(Int idx = 1; idx <= vps->getNumLayerSets() - 1; idx++)1131 #endif1132 1128 { 1133 1129 READ_FLAG( uiCode, "vps_profile_present_flag[i]" ); vps->setProfilePresentFlag(idx, uiCode ? true : false); 1134 1130 if( !vps->getProfilePresentFlag(idx) ) 1135 1131 { 1136 #if VPS_PROFILE_OUTPUT_LAYERS1137 1132 READ_CODE( 6, uiCode, "profile_ref_minus1[i]" ); vps->setProfileLayerSetRef(idx, uiCode + 1); 1138 #else1139 READ_UVLC( uiCode, "vps_profile_layer_set_ref_minus1[i]" ); vps->setProfileLayerSetRef(idx, uiCode + 1);1140 #endif1141 1133 assert( vps->getProfileLayerSetRef(idx) < idx ); 1134 1142 1135 // Copy profile information as indicated 1143 1136 vps->getPTLForExtn(idx)->copyProfileInfo( vps->getPTLForExtn( vps->getProfileLayerSetRef(idx) ) ); … … 1147 1140 #endif 1148 1141 1149 #if VPS_PROFILE_OUTPUT_LAYERS1150 1142 READ_FLAG( uiCode, "more_output_layer_sets_than_default_flag" ); vps->setMoreOutputLayerSetsThanDefaultFlag( uiCode ? true : false ); 1151 1143 Int numOutputLayerSets = 0; … … 1208 1200 READ_CODE( numBits, uiCode, "profile_level_tier_idx[i]" ); vps->setProfileLevelTierIdx(i, uiCode); 1209 1201 } 1210 #else 1211 #if VPS_EXTN_OP_LAYER_SETS 1212 // Target output layer signalling 1213 READ_UVLC( uiCode, "vps_num_output_layer_sets"); vps->setNumOutputLayerSets(uiCode); 1214 for(i = 0; i < vps->getNumOutputLayerSets(); i++) 1215 { 1216 #if VPS_OUTPUT_LAYER_SET_IDX 1217 READ_UVLC( uiCode, "vps_output_layer_set_idx_minus1[i]"); vps->setOutputLayerSetIdx(i, uiCode + 1); 1218 #else 1219 READ_UVLC( uiCode, "vps_output_layer_set_idx[i]"); vps->setOutputLayerSetIdx(i, uiCode); 1220 #endif 1221 Int lsIdx = vps->getOutputLayerSetIdx(i); 1222 for(j = 0; j <= vps->getMaxLayerId(); j++) 1223 { 1224 if(vps->getLayerIdIncludedFlag(lsIdx, j)) 1225 { 1226 READ_FLAG( uiCode, "vps_output_layer_flag[lsIdx][j]"); vps->setOutputLayerFlag(lsIdx, j, uiCode); 1227 } 1228 } 1229 } 1230 #endif 1231 #endif 1202 1232 1203 #if REPN_FORMAT_IN_VPS 1233 1204 READ_FLAG( uiCode, "rep_format_idx_present_flag"); … … 1456 1427 #endif 1457 1428 } 1458 #endif 1429 #endif 1430 #endif //SVC_EXTENSION 1431 1459 1432 Void TDecCavlc::parseSliceHeader (TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager) 1460 1433 {
Note: See TracChangeset for help on using the changeset viewer.