Changeset 181 in SHVCSoftware for branches/SHM-2.0-dev/source


Ignore:
Timestamp:
11 May 2013, 01:14:05 (12 years ago)
Author:
seregin
Message:

move syntax signaling associated with JCTVC_M0458_INTERLAYER_RPS_SIG ahead of the list modification signaling

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

Legend:

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

    r180 r181  
    744744#if REF_IDX_FRAMEWORK
    745745#if JCTVC_M0458_INTERLAYER_RPS_SIG
     746    return m_activeNumILRRefIdx;
     747#else
    746748    return getNumILRRefIdx();
    747 #else
    748     return m_numILRRefIdx;
    749749#endif
    750750#else
     
    762762  if(getLayerId())
    763763  {
     764#if JCTVC_M0458_INTERLAYER_RPS_SIG
     765    numRpsCurrTempList += m_activeNumILRRefIdx;
     766#else
    764767    numRpsCurrTempList += getNumILRRefIdx();
     768#endif
    765769  }
    766770#endif
  • branches/SHM-2.0-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp

    r178 r181  
    13231323        rpcSlice->setRPS(rps);
    13241324      }
     1325
     1326
    13251327      if (rpcSlice->getSPS()->getTMVPFlagsPresent())
    13261328      {
     
    13331335      }
    13341336    }
     1337
     1338#if REF_IDX_FRAMEWORK
     1339#if JCTVC_M0458_INTERLAYER_RPS_SIG   
     1340    rpcSlice->setActiveNumILRRefIdx(0);
     1341    if((sps->getLayerId() > 0)  &&  (rpcSlice->getNumILRRefIdx() > 0) )
     1342    {     
     1343      READ_FLAG(uiCode,"inter_layer_pred_enabled_flag");
     1344      rpcSlice->setInterLayerPredEnabledFlag(uiCode);
     1345      if( rpcSlice->getInterLayerPredEnabledFlag())
     1346      {
     1347        if(rpcSlice->getNumILRRefIdx() > 1)
     1348        {
     1349          if( !rpcSlice->getVPS()->getMaxOneActiveRefLayerFlag())
     1350          {
     1351            READ_UVLC(uiCode,"num_inter_layer_ref_pics_minus1");   
     1352            rpcSlice->setActiveNumILRRefIdx(uiCode + 1);         
     1353          }
     1354          else
     1355          {
     1356            rpcSlice->setActiveNumILRRefIdx(1);         
     1357            rpcSlice->setInterLayerPredLayerIdc(0,0);         
     1358          }
     1359          for(Int i = 0; i < rpcSlice->getActiveNumILRRefIdx(); i++ )
     1360          {
     1361            READ_UVLC(uiCode,"inter_layer_pred_layer_idc[i]");         
     1362            rpcSlice->setInterLayerPredLayerIdc(uiCode,i);         
     1363          }
     1364        }
     1365        else
     1366        {
     1367          rpcSlice->setActiveNumILRRefIdx(1);         
     1368          rpcSlice->setInterLayerPredLayerIdc(0,0);     
     1369        }
     1370      }
     1371    }
     1372#else
     1373    if( rpcSlice->getLayerId() > 0 )
     1374    {
     1375      rpcSlice->setNumILRRefIdx( rpcSlice->getVPS()->getNumDirectRefLayers( rpcSlice->getLayerId() ) );
     1376    }
     1377#endif
     1378#endif
     1379
    13351380    if(sps->getUseSAO())
    13361381    {
     
    16061651    rpcSlice->setNumEntryPointOffsets ( 0 );
    16071652  }
    1608 
    1609 #if REF_IDX_FRAMEWORK
    1610 #if JCTVC_M0458_INTERLAYER_RPS_SIG   
    1611   rpcSlice->setActiveNumILRRefIdx(0);
    1612   if((sps->getLayerId() > 0)  &&  (rpcSlice->getNumILRRefIdx() > 0) )
    1613   {     
    1614     READ_FLAG(uiCode,"inter_layer_pred_enabled_flag");
    1615     rpcSlice->setInterLayerPredEnabledFlag(uiCode);
    1616     if( rpcSlice->getInterLayerPredEnabledFlag())
    1617     {
    1618       if(rpcSlice->getNumILRRefIdx() > 1)
    1619       {
    1620         if( !rpcSlice->getVPS()->getMaxOneActiveRefLayerFlag())
    1621         {
    1622           READ_UVLC(uiCode,"num_inter_layer_ref_pics_minus1");   
    1623           rpcSlice->setActiveNumILRRefIdx(uiCode + 1);         
    1624         }
    1625         else
    1626         {
    1627           rpcSlice->setActiveNumILRRefIdx(1);         
    1628           rpcSlice->setInterLayerPredLayerIdc(0,0);         
    1629         }
    1630         for(Int i = 0; i < rpcSlice->getActiveNumILRRefIdx(); i++ )
    1631         {
    1632           READ_UVLC(uiCode,"inter_layer_pred_layer_idc[i]");         
    1633           rpcSlice->setInterLayerPredLayerIdc(uiCode,i);         
    1634         }
    1635       }
    1636       else
    1637       {
    1638         rpcSlice->setActiveNumILRRefIdx(1);         
    1639         rpcSlice->setInterLayerPredLayerIdc(0,0);     
    1640       }
    1641     }
    1642   }
    1643 #else
    1644   if( rpcSlice->getLayerId() > 0 )
    1645   {
    1646     rpcSlice->setNumILRRefIdx( rpcSlice->getVPS()->getNumDirectRefLayers( rpcSlice->getLayerId() ) );
    1647   }
    1648 #endif
    1649 #endif
    16501653
    16511654  if(pps->getSliceHeaderExtensionPresentFlag())
  • branches/SHM-2.0-dev/source/Lib/TLibEncoder/TEncCavlc.cpp

    r175 r181  
    10131013        }
    10141014      }
     1015
    10151016      if (pcSlice->getSPS()->getTMVPFlagsPresent())
    10161017      {
     
    10181019      }
    10191020    }
     1021
     1022#if JCTVC_M0458_INTERLAYER_RPS_SIG   
     1023    if((pcSlice->getSPS()->getLayerId() > 0)  &&  (pcSlice->getNumILRRefIdx() > 0) )
     1024    {
     1025      WRITE_FLAG(pcSlice->getInterLayerPredEnabledFlag(),"inter_layer_pred_enabled_flag");
     1026      if( pcSlice->getInterLayerPredEnabledFlag())
     1027      {
     1028        if(pcSlice->getNumILRRefIdx() > 1)
     1029        {
     1030          if( !pcSlice->getVPS()->getMaxOneActiveRefLayerFlag())
     1031          {
     1032            WRITE_UVLC(pcSlice->getNumInterLayerRefPics(),"num_inter_layer_ref_pics_minus1");                     
     1033          }       
     1034          for(Int i = 0; i < pcSlice->getActiveNumILRRefIdx(); i++ )
     1035            WRITE_UVLC(pcSlice->getInterLayerPredLayerIdc(i),"inter_layer_pred_layer_idc[i]");     
     1036        }
     1037      }
     1038    }     
     1039#endif
     1040
    10201041    if(pcSlice->getSPS()->getUseSAO())
    10211042    {
     
    11761197    }
    11771198  }
    1178 #if JCTVC_M0458_INTERLAYER_RPS_SIG   
    1179     if((pcSlice->getSPS()->getLayerId() > 0)  &&  (pcSlice->getNumILRRefIdx() > 0) )
    1180     {
    1181       WRITE_FLAG(pcSlice->getInterLayerPredEnabledFlag(),"inter_layer_pred_enabled_flag");
    1182       if( pcSlice->getInterLayerPredEnabledFlag())
    1183       {
    1184         if(pcSlice->getNumILRRefIdx() > 1)
    1185         {
    1186           if( !pcSlice->getVPS()->getMaxOneActiveRefLayerFlag())
    1187           {
    1188             WRITE_UVLC(pcSlice->getNumInterLayerRefPics(),"num_inter_layer_ref_pics_minus1");                     
    1189           }       
    1190           for(Int i = 0; i < pcSlice->getActiveNumILRRefIdx(); i++ )
    1191             WRITE_UVLC(pcSlice->getInterLayerPredLayerIdc(i),"inter_layer_pred_layer_idc[i]");     
    1192         }
    1193       }
    1194     }     
    1195 #endif
     1199
    11961200  if(pcSlice->getPPS()->getSliceHeaderExtensionPresentFlag())
    11971201  {
Note: See TracChangeset for help on using the changeset viewer.