Changeset 181 in SHVCSoftware for branches/SHM-2.0-dev/source
- Timestamp:
- 11 May 2013, 01:14:05 (12 years ago)
- 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 744 744 #if REF_IDX_FRAMEWORK 745 745 #if JCTVC_M0458_INTERLAYER_RPS_SIG 746 return m_activeNumILRRefIdx; 747 #else 746 748 return getNumILRRefIdx(); 747 #else748 return m_numILRRefIdx;749 749 #endif 750 750 #else … … 762 762 if(getLayerId()) 763 763 { 764 #if JCTVC_M0458_INTERLAYER_RPS_SIG 765 numRpsCurrTempList += m_activeNumILRRefIdx; 766 #else 764 767 numRpsCurrTempList += getNumILRRefIdx(); 768 #endif 765 769 } 766 770 #endif -
branches/SHM-2.0-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp
r178 r181 1323 1323 rpcSlice->setRPS(rps); 1324 1324 } 1325 1326 1325 1327 if (rpcSlice->getSPS()->getTMVPFlagsPresent()) 1326 1328 { … … 1333 1335 } 1334 1336 } 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 1335 1380 if(sps->getUseSAO()) 1336 1381 { … … 1606 1651 rpcSlice->setNumEntryPointOffsets ( 0 ); 1607 1652 } 1608 1609 #if REF_IDX_FRAMEWORK1610 #if JCTVC_M0458_INTERLAYER_RPS_SIG1611 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 else1626 {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 else1637 {1638 rpcSlice->setActiveNumILRRefIdx(1);1639 rpcSlice->setInterLayerPredLayerIdc(0,0);1640 }1641 }1642 }1643 #else1644 if( rpcSlice->getLayerId() > 0 )1645 {1646 rpcSlice->setNumILRRefIdx( rpcSlice->getVPS()->getNumDirectRefLayers( rpcSlice->getLayerId() ) );1647 }1648 #endif1649 #endif1650 1653 1651 1654 if(pps->getSliceHeaderExtensionPresentFlag()) -
branches/SHM-2.0-dev/source/Lib/TLibEncoder/TEncCavlc.cpp
r175 r181 1013 1013 } 1014 1014 } 1015 1015 1016 if (pcSlice->getSPS()->getTMVPFlagsPresent()) 1016 1017 { … … 1018 1019 } 1019 1020 } 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 1020 1041 if(pcSlice->getSPS()->getUseSAO()) 1021 1042 { … … 1176 1197 } 1177 1198 } 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 1196 1200 if(pcSlice->getPPS()->getSliceHeaderExtensionPresentFlag()) 1197 1201 {
Note: See TracChangeset for help on using the changeset viewer.