Changeset 1054 in 3DVCSoftware for branches/HTM-12.0-dev1/source/App/TAppDecoder


Ignore:
Timestamp:
26 Sep 2014, 18:34:05 (11 years ago)
Author:
tech
Message:

Integration of various MV-HEVC HLS changes.

Location:
branches/HTM-12.0-dev1/source/App/TAppDecoder
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-12.0-dev1/source/App/TAppDecoder/TAppDecCfg.cpp

    r872 r1054  
    9494  ("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.")
    9595  ("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
    96101  ;
    97102  po::setDefaults(opts);
  • branches/HTM-12.0-dev1/source/App/TAppDecoder/TAppDecCfg.h

    r964 r1054  
    8080
    8181#if H_MV
     82#if H_MV_HLS10_GEN_FIX
     83  Bool          m_outputVpsInfo;                     ///< Output VPS information
     84#endif
    8285  Void xAppendToFileNameEnd( Char* pchInputFileName, const Char* pchStringToAppend, Char*& rpchOutputFileName); ///< create filenames
    8386#endif
  • branches/HTM-12.0-dev1/source/App/TAppDecoder/TAppDecTop.cpp

    r976 r1054  
    239239          {
    240240            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 )
    242261          {
    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            m_vps->printLayerDependencies();
     263            m_vps->printLayerSets();
     264            m_vps->printPTL();
    245265          }
    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       }
     266#endif
     267        }
    260268#if H_3D
    261269        if (nalu.m_nalUnitType == NAL_UNIT_VPS )
     
    569577  Int dpbFullness = 0;
    570578#if H_MV
     579#if H_MV_HLS10_ADD_LAYERSETS
     580  TComSPS* activeSPS = m_tDecTop[ decIdx ]->getActiveSPS();
     581#else
    571582  // preliminary fix
    572583  TComSPS* activeSPS = m_tDecTop[0]->getActiveSPS();
     584#endif
    573585#else
    574586  TComSPS* activeSPS = m_cTDecTop.getActiveSPS();
Note: See TracChangeset for help on using the changeset viewer.