Changeset 170 in SHVCSoftware for branches/SHM-2.0-dev/source/Lib/TLibDecoder


Ignore:
Timestamp:
9 May 2013, 17:40:26 (12 years ago)
Author:
qualcomm
Message:

JCTVC-M0458:signalling and derivation of inter-layer RPS. Author: krapaka@…

Location:
branches/SHM-2.0-dev/source/Lib/TLibDecoder
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-2.0-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp

    r169 r170  
    10391039#endif
    10401040#endif
     1041#if JCTVC_M0458
     1042   READ_FLAG(uiCode, "max_one_active_ref_layer_flag" );
     1043   vps->setMaxOneActiveRefLayerFlag(uiCode);   
     1044#endif
    10411045
    10421046#if !VPS_MOVE_DIR_DEPENDENCY_FLAG
     
    15911595  }
    15921596
     1597  #if JCTVC_M0458   
     1598    rpcSlice->setActiveNumILRRefIdx(0);
     1599    if((sps->getLayerId() > 0)  &&  (rpcSlice->getNumILRRefIdx() > 0) )
     1600    {     
     1601      READ_FLAG(uiCode,"inter_layer_pred_enabled_flag");
     1602      rpcSlice->setInterLayerPredEnabledFlag(uiCode);
     1603      if( rpcSlice->getInterLayerPredEnabledFlag())
     1604      {
     1605        if(rpcSlice->getNumILRRefIdx() > 1)
     1606        {
     1607          if( !rpcSlice->getVPS()->getMaxOneActiveRefLayerFlag())
     1608          {
     1609            READ_UVLC(uiCode,"num_inter_layer_ref_pics_minus1");   
     1610            rpcSlice->setActiveNumILRRefIdx(uiCode + 1);         
     1611          }
     1612          else
     1613          {
     1614            rpcSlice->setActiveNumILRRefIdx(1);         
     1615            rpcSlice->setInterLayerPredLayerIdc(0,0);         
     1616          }
     1617          for(Int i = 0; i < rpcSlice->getActiveNumILRRefIdx(); i++ )
     1618          {
     1619            READ_UVLC(uiCode,"inter_layer_pred_layer_idc[i]");         
     1620            rpcSlice->setInterLayerPredLayerIdc(uiCode,i);         
     1621          }
     1622        }
     1623        else
     1624        {
     1625          rpcSlice->setActiveNumILRRefIdx(1);         
     1626          rpcSlice->setInterLayerPredLayerIdc(0,0);     
     1627        }
     1628      }
     1629    }     
     1630#endif
     1631
    15931632  if(pps->getSliceHeaderExtensionPresentFlag())
    15941633  {
  • branches/SHM-2.0-dev/source/Lib/TLibDecoder/TDecTop.cpp

    r163 r170  
    12571257  // currently only one reference layer is supported
    12581258  assert( vps->getNumDirectRefLayers( m_layerId ) == 1 );
     1259#if JCTVC_M0458
     1260  assert( vps->getMaxOneActiveRefLayerFlag() == 1 );
     1261#endif
     1262
    12591263
    12601264  return (TDecTop *)getLayerDec( vps->getRefLayerId( m_layerId, 0 ) );
Note: See TracChangeset for help on using the changeset viewer.