Changeset 526 in SHVCSoftware for branches/SHM-4.1-dev/source/Lib/TLibDecoder


Ignore:
Timestamp:
24 Dec 2013, 03:04:21 (11 years ago)
Author:
qualcomm
Message:

Using signaled DPB-related parameters in the decoder (MACRO: USE_DPB_SIZE_TABLE)

This patch uses the signaled value of DPB-related parameters in the VPS extension in the decoder.

From: Adarsh K. Ramasubramonian <aramasub@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-4.1-dev/source/Lib/TLibDecoder/TDecTop.cpp

    r521 r526  
    170170    for( Int temporalLayer=0; temporalLayer < MAX_TLAYER; temporalLayer++)
    171171    {
     172#if USE_DPB_SIZE_TABLE
     173      TComVPS *vps = slice->getVPS();
     174      // SHM decoders will use DPB size table in the VPS to determine the number of reorder pictures.
     175      numReorderPics[temporalLayer] = vps->getMaxVpsNumReorderPics( getCommonDecoderParams()->getOutputLayerSetIdx() , temporalLayer);
     176#else
    172177      numReorderPics[temporalLayer] = pcSPS->getNumReorderPics(temporalLayer);
     178#endif
    173179    }
    174180
     
    260266  for( Int temporalLayer=0; temporalLayer < MAX_TLAYER; temporalLayer++)
    261267  {
     268#if USE_DPB_SIZE_TABLE
     269    TComVPS *vps = pcSlice->getVPS();
     270    // SHM decoders will use DPB size table in the VPS to determine the number of reorder pictures.
     271    numReorderPics[temporalLayer] = vps->getMaxVpsNumReorderPics( getCommonDecoderParams()->getOutputLayerSetIdx() , temporalLayer);
     272#else
    262273    numReorderPics[temporalLayer] = pcSlice->getSPS()->getNumReorderPics(temporalLayer);
    263   }
    264 
     274#endif
     275  }
     276
     277#if USE_DPB_SIZE_TABLE
     278  m_iMaxRefPicNum = pcSlice->getVPS()->getMaxVpsDecPicBufferingMinus1( getCommonDecoderParams()->getOutputLayerSetIdx(), pcSlice->getLayerId(), pcSlice->getTLayer() ) + 1; // m_uiMaxDecPicBuffering has the space for the picture currently being decoded
     279#else
    265280  m_iMaxRefPicNum = pcSlice->getSPS()->getMaxDecPicBuffering(pcSlice->getTLayer());     // m_uiMaxDecPicBuffering has the space for the picture currently being decoded
     281#endif
    266282
    267283#if SVC_EXTENSION
Note: See TracChangeset for help on using the changeset viewer.