Changeset 258 in SHVCSoftware


Ignore:
Timestamp:
4 Jun 2013, 23:13:05 (12 years ago)
Author:
qualcomm
Message:

Generic initialization of ActiveNumILRRefIdx and InterLayerPredLayerIdc.

Location:
branches/SHM-2.1-dev/source/Lib
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-2.1-dev/source/Lib/TLibCommon/TComSlice.cpp

    r248 r258  
    10901090  m_activeNumILRRefIdx         = pSrc->m_activeNumILRRefIdx;
    10911091  m_interLayerPredEnabledFlag  = pSrc->m_interLayerPredEnabledFlag;
    1092   m_numInterLayerRefPics       = pSrc->m_numInterLayerRefPics;
    10931092  memcpy( m_interLayerPredLayerIdc, pSrc->m_interLayerPredLayerIdc, sizeof( m_interLayerPredLayerIdc ) );
    10941093#elif REF_IDX_FRAMEWORK
  • branches/SHM-2.1-dev/source/Lib/TLibCommon/TComSlice.h

    r216 r258  
    15321532#if JCTVC_M0458_INTERLAYER_RPS_SIG
    15331533  Bool       m_interLayerPredEnabledFlag;
    1534   Int        m_numInterLayerRefPics;
    15351534#endif
    15361535public:
     
    18081807  Bool      getInterLayerPredEnabledFlag     ()                { return m_interLayerPredEnabledFlag;}
    18091808
    1810   Void      setNumInterLayerRefPics          ( UInt   val )    { m_numInterLayerRefPics = val; }
    1811   UInt      getNumInterLayerRefPics          ()                { return m_numInterLayerRefPics;} 
    18121809#else
    18131810  Void      setNumILRRefIdx     ( Int i )               { m_numILRRefIdx = i;     }
  • branches/SHM-2.1-dev/source/Lib/TLibEncoder/TEncCavlc.cpp

    r249 r258  
    10671067          if( !pcSlice->getVPS()->getMaxOneActiveRefLayerFlag())
    10681068          {
    1069             WRITE_CODE(pcSlice->getNumInterLayerRefPics(), numBits,"num_inter_layer_ref_pics_minus1");
     1069            WRITE_CODE(pcSlice->getActiveNumILRRefIdx() - 1, numBits,"num_inter_layer_ref_pics_minus1");           
    10701070          }       
    10711071          for(Int i = 0; i < pcSlice->getActiveNumILRRefIdx(); i++ )
  • branches/SHM-2.1-dev/source/Lib/TLibEncoder/TEncSlice.cpp

    r191 r258  
    491491  {
    492492#if JCTVC_M0458_INTERLAYER_RPS_SIG
    493   // currently only one reference layer is supported in software and no decision logic to select yet.
    494   // hence num of active inter layer references is set to one always
    495493    if( rpcSlice->getNumILRRefIdx() > 0 )
    496494    {
    497       rpcSlice->setActiveNumILRRefIdx(1);
     495      rpcSlice->setActiveNumILRRefIdx( rpcSlice->getNumILRRefIdx() );
     496      for( Int i = 0; i < rpcSlice->getActiveNumILRRefIdx(); i++ )
     497      {
     498        rpcSlice->setInterLayerPredLayerIdc(i, i);
     499      }
    498500      rpcSlice->setInterLayerPredEnabledFlag(1);
    499501    }
Note: See TracChangeset for help on using the changeset viewer.