Changeset 1066 in 3DVCSoftware for trunk/source/App/TAppDecoder
- Timestamp:
- 13 Oct 2014, 12:19:36 (10 years ago)
- Location:
- trunk/source/App/TAppDecoder
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/App/TAppDecoder/TAppDecCfg.cpp
r872 r1066 94 94 ("TarDecLayerIdSetFile,l", cfg_TargetDecLayerIdSetFile, string(""), "targetDecLayerIdSet file name. The file should include white space separated LayerId values to be decoded. Omitting the option or a value of -1 in the file decodes all layers.") 95 95 ("RespectDefDispWindow,w", m_respectDefDispWindow, 0, "Only output content inside the default display window\n") 96 #if H_MV 97 #if H_MV_HLS10_GEN_FIX 98 ("OutputVpsInfo,v", m_outputVpsInfo, false, "Output information about the layer dependencies and layer sets") 99 #endif 100 #endif 96 101 ; 97 102 po::setDefaults(opts); -
trunk/source/App/TAppDecoder/TAppDecCfg.h
r964 r1066 80 80 81 81 #if H_MV 82 #if H_MV_HLS10_GEN_FIX 83 Bool m_outputVpsInfo; ///< Output VPS information 84 #endif 82 85 Void xAppendToFileNameEnd( Char* pchInputFileName, const Char* pchStringToAppend, Char*& rpchOutputFileName); ///< create filenames 83 86 #endif -
trunk/source/App/TAppDecoder/TAppDecTop.cpp
r976 r1066 239 239 { 240 240 TComVPS* vps = m_vps; 241 if ( m_targetOptLayerSetIdx == -1 ) 241 if ( m_targetOptLayerSetIdx == -1 ) 242 { 243 // Not normative! Corresponds to specification by "External Means". (Should be set equal to 0, when no external means available. ) 244 m_targetOptLayerSetIdx = vps->getVpsNumLayerSetsMinus1(); 245 } 246 247 for (Int dI = 0; dI < m_numDecoders; dI++ ) 248 { 249 m_tDecTop[decIdx]->setTargetOptLayerSetIdx( m_targetOptLayerSetIdx ); 250 } 251 252 if ( m_targetOptLayerSetIdx < 0 || m_targetOptLayerSetIdx >= vps->getNumOutputLayerSets() ) 253 { 254 fprintf(stderr, "\ntarget output layer set index must be in the range of 0 to %d, inclusive \n", vps->getNumOutputLayerSets() - 1 ); 255 exit(EXIT_FAILURE); 256 } 257 m_targetDecLayerIdSet = vps->getTargetDecLayerIdList( m_targetOptLayerSetIdx ); 258 } 259 #if H_MV_HLS10_GEN_FIX 260 if (m_outputVpsInfo ) 242 261 { 243 // Not normative! Corresponds to specification by "External Means". (Should be set equal to 0, when no external means available. ) 244 m_targetOptLayerSetIdx = vps->getVpsNumLayerSetsMinus1(); 262 #if H_MV_HLS10_AUX 263 m_vps->printScalabilityId(); 264 #endif 265 m_vps->printLayerDependencies(); 266 m_vps->printLayerSets(); 267 m_vps->printPTL(); 245 268 } 246 247 for (Int dI = 0; dI < m_numDecoders; dI++ ) 248 { 249 m_tDecTop[decIdx]->setTargetOptLayerSetIdx( m_targetOptLayerSetIdx ); 250 } 251 252 if ( m_targetOptLayerSetIdx < 0 || m_targetOptLayerSetIdx >= vps->getNumOutputLayerSets() ) 253 { 254 fprintf(stderr, "\ntarget output layer set index must be in the range of 0 to %d, inclusive \n", vps->getNumOutputLayerSets() - 1 ); 255 exit(EXIT_FAILURE); 256 } 257 m_targetDecLayerIdSet = vps->getTargetDecLayerIdList( m_targetOptLayerSetIdx ); 258 } 259 } 269 #endif 270 } 260 271 #if H_3D 261 272 if (nalu.m_nalUnitType == NAL_UNIT_VPS ) … … 569 580 Int dpbFullness = 0; 570 581 #if H_MV 582 #if H_MV_HLS10_ADD_LAYERSETS 583 TComSPS* activeSPS = m_tDecTop[ decIdx ]->getActiveSPS(); 584 #else 571 585 // preliminary fix 572 586 TComSPS* activeSPS = m_tDecTop[0]->getActiveSPS(); 587 #endif 573 588 #else 574 589 TComSPS* activeSPS = m_cTDecTop.getActiveSPS(); … … 1140 1155 Int curLayerId = m_tDecTop[dIdx]->getLayerId(); 1141 1156 Int curLayerIdxInVps = m_vps->getLayerIdInNuh( curLayerId ); 1157 #if H_MV_HLS10_REF_PRED_LAYERS 1158 if ( m_vps->getDependencyFlag(optLayerIdxInVps, curLayerIdxInVps ) ) 1159 #else 1142 1160 if ( m_vps->getInDirectDependencyFlag(optLayerIdxInVps, curLayerIdxInVps ) ) 1161 #endif 1143 1162 { 1144 1163 TComPic* curPic = m_ivPicLists.getPic( curLayerId, pocLastPic );
Note: See TracChangeset for help on using the changeset viewer.