Changeset 176 in SHVCSoftware for branches/SHM-2.0-dev/source
- Timestamp:
- 10 May 2013, 00:11:31 (12 years ago)
- Location:
- branches/SHM-2.0-dev/source/Lib
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-2.0-dev/source/Lib/TLibCommon/TComSlice.cpp
r174 r176 124 124 125 125 #if REF_IDX_FRAMEWORK 126 #if JCTVC_M0458_INTERLAYER_RPS_SIG 127 m_activeNumILRRefIdx = 0; 128 m_interLayerPredEnabledFlag = 0; 129 ::memset( m_interLayerPredLayerIdc, 0, sizeof(m_interLayerPredLayerIdc) ); 130 #else 126 131 m_numILRRefIdx = 0; 127 #endif128 #if JCTVC_M0458_INTERLAYER_RPS_SIG129 m_activeNumILRRefIdx = 0;130 m_bInterLayerPredEnabledFlag = 0;131 132 for ( Int idx = 0; idx < MAX_VPS_LAYER_ID_PLUS1; idx++ )133 m_aiInterLayerPredLayerIdc[idx] = 0;134 132 #endif 133 #endif 135 134 136 135 initEqualRef(); … … 183 182 m_aiNumRefIdx[1] = 0; 184 183 #if REF_IDX_FRAMEWORK 185 if(layerId)186 {187 m_numILRRefIdx = m_pcVPS->getNumDirectRefLayers( layerId );188 184 #if JCTVC_M0458_INTERLAYER_RPS_SIG 189 m_activeNumILRRefIdx = m_pcVPS->getNumDirectRefLayers( layerId ); 190 m_bInterLayerPredEnabledFlag = 1; 185 m_activeNumILRRefIdx = 0; 186 m_interLayerPredEnabledFlag = 0; 187 #else 188 m_numILRRefIdx = 0; 191 189 #endif 192 } 193 else 194 { 195 m_numILRRefIdx = 0; 196 #if JCTVC_M0458_INTERLAYER_RPS_SIG 197 m_activeNumILRRefIdx = 0; 198 m_bInterLayerPredEnabledFlag = 0; 199 #endif 200 } 190 201 191 #endif 202 192 m_colFromL0Flag = 1; -
branches/SHM-2.0-dev/source/Lib/TLibCommon/TComSlice.h
r175 r176 1423 1423 Int m_deblockingFilterBetaOffsetDiv2; //< beta offset for deblocking filter 1424 1424 Int m_deblockingFilterTcOffsetDiv2; //< tc offset for deblocking filter 1425 #if JCTVC_M0458_INTERLAYER_RPS_SIG 1426 Int m_activeNumILRRefIdx; //< Active inter-layer reference pictures 1427 Int m_interLayerPredLayerIdc [MAX_VPS_LAYER_ID_PLUS1]; 1428 #else 1425 1429 #if REF_IDX_FRAMEWORK 1426 1430 Int m_numILRRefIdx; //< for inter-layer reference picture ser 1427 1431 #endif 1428 #if JCTVC_M0458_INTERLAYER_RPS_SIG1429 Int m_activeNumILRRefIdx; //< Active inter-layer reference pictures1430 Int m_aiInterLayerPredLayerIdc [MAX_VPS_LAYER_ID_PLUS1];1431 1432 #endif 1432 1433 #if L0034_COMBINED_LIST_CLEANUP … … 1523 1524 Bool m_enableTMVPFlag; 1524 1525 #if JCTVC_M0458_INTERLAYER_RPS_SIG 1525 Bool m_ bInterLayerPredEnabledFlag;1526 Bool m_interLayerPredEnabledFlag; 1526 1527 Int m_numInterLayerRefPics; 1527 1528 #endif … … 1582 1583 Int getDeblockingFilterTcOffsetDiv2() { return m_deblockingFilterTcOffsetDiv2; } 1583 1584 #if REF_IDX_FRAMEWORK 1584 Int getNumILRRefIdx ( ) { return m_numILRRefIdx; } 1585 Int getNumILRRefIdx ( ) { return m_pcVPS->getNumDirectRefLayers( m_layerId ); } 1586 #if !JCTVC_M0458_INTERLAYER_RPS_SIG 1585 1587 Void setNumILRRefIdx ( Int i ) { m_numILRRefIdx = i; } 1588 #endif 1586 1589 #endif 1587 1590 #if JCTVC_M0458_INTERLAYER_RPS_SIG … … 1589 1592 Void setActiveNumILRRefIdx ( Int i ) { m_activeNumILRRefIdx = i; } 1590 1593 1591 Int getInterLayerPredLayerIdc (UInt Idx ) { return m_ aiInterLayerPredLayerIdc[Idx];}1592 Void setInterLayerPredLayerIdc (UInt val, UInt Idx) { m_aiInterLayerPredLayerIdc[Idx] = val;}1594 Int getInterLayerPredLayerIdc (UInt Idx ) { return m_interLayerPredLayerIdc[Idx];} 1595 Void setInterLayerPredLayerIdc (UInt val, UInt Idx) { m_interLayerPredLayerIdc[Idx] = val; } 1593 1596 #endif 1594 1597 Int getNumRefIdx ( RefPicList e ) { return m_aiNumRefIdx[e]; } … … 1796 1799 Bool getEnableTMVPFlag () { return m_enableTMVPFlag;} 1797 1800 #if JCTVC_M0458_INTERLAYER_RPS_SIG 1798 Void setInterLayerPredEnabledFlag ( Bool val ) { m_ bInterLayerPredEnabledFlag = val; }1799 Bool getInterLayerPredEnabledFlag () { return m_ bInterLayerPredEnabledFlag;}1801 Void setInterLayerPredEnabledFlag ( Bool val ) { m_interLayerPredEnabledFlag = val; } 1802 Bool getInterLayerPredEnabledFlag () { return m_interLayerPredEnabledFlag;} 1800 1803 1801 1804 Void setNumInterLayerRefPics ( UInt val ) { m_numInterLayerRefPics = val; } -
branches/SHM-2.0-dev/source/Lib/TLibEncoder/TEncGOP.cpp
r175 r176 669 669 pcSlice->setNumRefIdx(REF_PIC_LIST_1, pcSlice->getNumRefIdx(REF_PIC_LIST_1)+pcSlice->getNumILRRefIdx()); 670 670 } 671 #if JCTVC_M0458_INTERLAYER_RPS_SIG672 // currently only one reference layer is supported in software and no decision logic to select yet.673 // hence num of active inter layer references is set to one always674 pcSlice->setActiveNumILRRefIdx(1);675 #endif676 671 } 677 672 #endif -
branches/SHM-2.0-dev/source/Lib/TLibEncoder/TEncSlice.cpp
r174 r176 194 194 rpcSlice->setPic( pcPic ); 195 195 #if SVC_EXTENSION 196 UInt layerId = pcPic->getLayerId(); 196 197 rpcSlice->setVPS( vps ); 197 rpcSlice->initSlice( pcPic->getLayerId());198 rpcSlice->initSlice( layerId ); 198 199 #else 199 200 rpcSlice->initSlice(); … … 486 487 xStoreWPparam( pPPS->getUseWP(), pPPS->getWPBiPred() ); 487 488 489 #if SVC_EXTENSION 490 if( layerId > 0 ) 491 { 488 492 #if JCTVC_M0458_INTERLAYER_RPS_SIG 489 493 // currently only one reference layer is supported in software and no decision logic to select yet. 490 494 // hence num of active inter layer references is set to one always 491 rpcSlice->setActiveNumILRRefIdx(1); 495 if( rpcSlice->getNumILRRefIdx() > 0 ) 496 { 497 rpcSlice->setActiveNumILRRefIdx(1); 498 rpcSlice->setInterLayerPredEnabledFlag(1); 499 } 500 #else 501 rpcSlice->setNumILRRefIdx( rpcSlice->getVPS()->getNumDirectRefLayers( layerId ) ); 492 502 #endif 503 } 504 505 #endif 493 506 } 494 507
Note: See TracChangeset for help on using the changeset viewer.