Changeset 269 in SHVCSoftware for branches/SHM-2.1-multilayers-dev/source/Lib


Ignore:
Timestamp:
6 Jun 2013, 05:02:01 (12 years ago)
Author:
seregin
Message:

add config parameter for NumActiveRefLayers

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

Legend:

Unmodified
Added
Removed
  • branches/SHM-2.1-multilayers-dev/source/Lib/TLibCommon/TypeDef.h

    r242 r269  
    4747#define SCALED_REF_LAYER_OFFSET_FLAG     1      ///< M0309: Signal scaled reference layer offsets in SPS
    4848#define SCALED_REF_LAYER_OFFSETS         1      ///< M0309: Signal scaled reference layer offsets in SPS
    49 #define MAX_LAYERS                       2      ///< max number of layers the codec is supposed to handle
     49#define MAX_LAYERS                       3      ///< max number of layers the codec is supposed to handle
    5050
    5151#define VPS_RENAME                       1      ///< Rename variables max_layer_id and num_layer_sets_minus1 in VPS
  • branches/SHM-2.1-multilayers-dev/source/Lib/TLibEncoder/TEncCfg.h

    r212 r269  
    145145  Int       m_numDirectRefLayers;
    146146  Int       m_refLayerId[MAX_VPS_LAYER_ID_PLUS1];
     147
     148  Int       m_numActiveRefLayers;
     149  Int       m_predLayerId[MAX_VPS_LAYER_ID_PLUS1];
    147150#endif
    148151  //======= Transform =============
     
    405408  Int       getRefLayerId                   (Int i)                         { return m_refLayerId[i];           }
    406409  Void      setRefLayerId                   (Int i, Int refLayerId)         { m_refLayerId[i] = refLayerId;     }
     410
     411  Int       getNumActiveRefLayers           ()                              { return m_numActiveRefLayers;      }
     412  Void      setNumActiveRefLayers           (Int num)                       { m_numActiveRefLayers = num;       }
     413
     414  Int       getPredLayerId                  (Int i)                         { return m_predLayerId[i];          }
     415  Void      setPredLayerId                  (Int i, Int refLayerId)         { m_predLayerId[i] = refLayerId;    }
    407416#endif
    408417  //======== Transform =============
  • branches/SHM-2.1-multilayers-dev/source/Lib/TLibEncoder/TEncSlice.cpp

    r260 r269  
    493493    if( rpcSlice->getNumILRRefIdx() > 0 )
    494494    {
    495       rpcSlice->setActiveNumILRRefIdx( rpcSlice->getNumILRRefIdx() );
     495      rpcSlice->setActiveNumILRRefIdx( m_ppcTEncTop[layerId]->getNumActiveRefLayers() );
    496496      for( Int i = 0; i < rpcSlice->getActiveNumILRRefIdx(); i++ )
    497497      {
    498         rpcSlice->setInterLayerPredLayerIdc(i, i);
     498        rpcSlice->setInterLayerPredLayerIdc( m_ppcTEncTop[layerId]->getPredLayerId(i), i );
    499499      }
    500500      rpcSlice->setInterLayerPredEnabledFlag(1);
Note: See TracChangeset for help on using the changeset viewer.