Changeset 460 in SHVCSoftware
- Timestamp:
- 12 Nov 2013, 03:47:27 (11 years ago)
- Location:
- branches/SHM-4.0-dev/source/Lib
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-4.0-dev/source/Lib/TLibCommon/TComSlice.cpp
r455 r460 3049 3049 #endif 3050 3050 } 3051 #endif3052 3051 3053 3052 #if REF_IDX_MFM … … 3096 3095 #endif 3097 3096 3097 Void TComSlice::setILRPic(TComPic **pcIlpPic) 3098 { 3099 for( Int i = 0; i < m_activeNumILRRefIdx; i++ ) 3100 { 3101 Int refLayerIdc = m_interLayerPredLayerIdc[i]; 3102 3103 if( pcIlpPic[refLayerIdc] ) 3104 { 3105 pcIlpPic[refLayerIdc]->copyUpsampledPictureYuv( m_pcPic->getFullPelBaseRec( refLayerIdc ), pcIlpPic[refLayerIdc]->getPicYuvRec() ); 3106 pcIlpPic[refLayerIdc]->getSlice(0)->setPOC( m_iPOC ); 3107 pcIlpPic[refLayerIdc]->setLayerId( m_layerId ); //set reference layerId 3108 pcIlpPic[refLayerIdc]->getPicYuvRec()->setBorderExtension( false ); 3109 pcIlpPic[refLayerIdc]->getPicYuvRec()->extendPicBorder(); 3110 for (Int j=0; j<pcIlpPic[refLayerIdc]->getPicSym()->getNumberOfCUsInFrame(); j++) // set reference CU layerId 3111 { 3112 pcIlpPic[refLayerIdc]->getPicSym()->getCU(j)->setLayerId( pcIlpPic[refLayerIdc]->getLayerId() ); 3113 } 3114 } 3115 } 3116 } 3117 3118 #endif //SVC_EXTENSION 3119 3098 3120 //! \} -
branches/SHM-4.0-dev/source/Lib/TLibCommon/TComSlice.h
r454 r460 2058 2058 UInt getBitDepthY(); 2059 2059 UInt getBitDepthC(); 2060 Int getQpBDOffsetY(); 2061 Int getQpBDOffsetC(); 2062 #endif 2060 Int getQpBDOffsetY(); 2061 Int getQpBDOffsetC(); 2062 #endif 2063 2064 Void setILRPic(TComPic **pcIlpPic); 2063 2065 2064 2066 #endif //SVC_EXTENSION -
branches/SHM-4.0-dev/source/Lib/TLibDecoder/TDecTop.cpp
r459 r460 200 200 } 201 201 } 202 203 204 205 Void TDecTop::setILRPic(TComPic *pcPic)206 {207 for( Int i = 0; i < pcPic->getSlice(0)->getActiveNumILRRefIdx(); i++ )208 {209 Int refLayerIdc = pcPic->getSlice(0)->getInterLayerPredLayerIdc(i);210 211 if(m_cIlpPic[refLayerIdc])212 {213 m_cIlpPic[refLayerIdc]->copyUpsampledPictureYuv(pcPic->getFullPelBaseRec(refLayerIdc), m_cIlpPic[refLayerIdc]->getPicYuvRec());214 m_cIlpPic[refLayerIdc]->getSlice(0)->setPOC(pcPic->getPOC());215 m_cIlpPic[refLayerIdc]->setLayerId(pcPic->getSlice(0)->getBaseColPic(refLayerIdc)->getLayerId()); //set reference layerId216 m_cIlpPic[refLayerIdc]->getPicYuvRec()->setBorderExtension(false);217 m_cIlpPic[refLayerIdc]->getPicYuvRec()->extendPicBorder();218 for (Int j=0; j<m_cIlpPic[refLayerIdc]->getPicSym()->getNumberOfCUsInFrame(); j++) // set reference CU layerId219 {220 m_cIlpPic[refLayerIdc]->getPicSym()->getCU(j)->setLayerId(m_cIlpPic[refLayerIdc]->getLayerId());221 }222 }223 }224 }225 202 #endif 226 203 … … 310 287 #endif 311 288 } 312 #if MAX_ONE_RESAMPLING_DIRECT_LAYERS313 #if SCALABILITY_MASK_E0104314 if(pcSlice->getVPS()->getScalabilityMask(2))315 #else316 if(pcSlice->getVPS()->getScalabilityMask(1))317 #endif318 {319 pcSlice->setPic(rpcPic);320 }321 #endif322 289 } 323 290 } … … 1099 1066 pcPic->setLayerId(nalu.m_layerId); 1100 1067 pcSlice->setLayerId(nalu.m_layerId); 1068 pcSlice->setPic(pcPic); 1101 1069 #endif 1102 1070 … … 1232 1200 } 1233 1201 1234 setILRPic(pcPic);1202 pcSlice->setILRPic( m_cIlpPic ); 1235 1203 #if REF_IDX_MFM 1236 1204 #if M0457_COL_PICTURE_SIGNALING … … 1256 1224 if( pcSlice->getMFMEnabledFlag() ) 1257 1225 { 1258 Int nRefLayerID= pcSlice->getRefPic( pcSlice->getSliceType() == B_SLICE ? ( RefPicList )( 1 - pcSlice->getColFromL0Flag() ) : REF_PIC_LIST_0 , pcSlice->getColRefIdx() )->getLayerId();1259 if( nRefLayerID!= pcSlice->getLayerId() )1260 { 1261 TComPic * pColBasePic = pcSlice->getBaseColPic( nRefLayerID);1226 Int refLayerId = pcSlice->getRefPic( pcSlice->getSliceType() == B_SLICE ? ( RefPicList )( 1 - pcSlice->getColFromL0Flag() ) : REF_PIC_LIST_0 , pcSlice->getColRefIdx() )->getLayerId(); 1227 if( refLayerId != pcSlice->getLayerId() ) 1228 { 1229 TComPic * pColBasePic = pcSlice->getBaseColPic( refLayerId ); 1262 1230 assert( pColBasePic->checkSameRefInfo() == true ); 1263 1231 } -
branches/SHM-4.0-dev/source/Lib/TLibDecoder/TDecTop.h
r442 r460 213 213 Void xInitILRP(TComSPS *pcSPS); 214 214 #endif 215 Void setILRPic(TComPic *pcPic);216 215 #endif 217 216 #if AVC_SYNTAX || SYNTAX_OUTPUT -
branches/SHM-4.0-dev/source/Lib/TLibEncoder/TEncGOP.cpp
r459 r460 1148 1148 if( m_layerId > 0 && pcSlice->getActiveNumILRRefIdx() ) 1149 1149 { 1150 m_pcEncTop->setILRPic(pcPic);1150 pcSlice->setILRPic( m_pcEncTop->getIlpList() ); 1151 1151 #if REF_IDX_MFM 1152 1152 #if M0457_COL_PICTURE_SIGNALING -
branches/SHM-4.0-dev/source/Lib/TLibEncoder/TEncTop.cpp
r448 r460 1539 1539 #endif 1540 1540 1541 #if SVC_EXTENSION1542 1541 #if !REPN_FORMAT_IN_VPS 1543 1542 Void TEncTop::xInitILRP() … … 1627 1626 } 1628 1627 #endif 1629 Void TEncTop::setILRPic(TComPic *pcPic) 1630 { 1631 for( Int i = 0; i < pcPic->getSlice(0)->getActiveNumILRRefIdx(); i++ ) 1632 { 1633 Int refLayerIdc = pcPic->getSlice(0)->getInterLayerPredLayerIdc(i); 1634 1635 if(m_cIlpPic[refLayerIdc]) 1636 { 1637 m_cIlpPic[refLayerIdc]->copyUpsampledPictureYuv(pcPic->getFullPelBaseRec(refLayerIdc), m_cIlpPic[refLayerIdc]->getPicYuvRec()); 1638 m_cIlpPic[refLayerIdc]->getSlice(0)->setPOC(pcPic->getPOC()); 1639 m_cIlpPic[refLayerIdc]->setLayerId(pcPic->getSlice(0)->getBaseColPic(refLayerIdc)->getLayerId()); //set reference layerId 1640 m_cIlpPic[refLayerIdc]->getPicYuvRec()->setBorderExtension(false); 1641 m_cIlpPic[refLayerIdc]->getPicYuvRec()->extendPicBorder(); 1642 for (Int j=0; j<m_cIlpPic[refLayerIdc]->getPicSym()->getNumberOfCUsInFrame(); j++) // set reference CU layerId 1643 { 1644 m_cIlpPic[refLayerIdc]->getPicSym()->getCU(j)->setLayerId(m_cIlpPic[refLayerIdc]->getLayerId()); 1645 } 1646 } 1647 } 1648 } 1649 #endif 1650 #endif 1628 #endif //SVC_EXTENSION 1651 1629 //! \} -
branches/SHM-4.0-dev/source/Lib/TLibEncoder/TEncTop.h
r448 r460 219 219 #if SVC_EXTENSION 220 220 TComPic** getIlpList() { return m_cIlpPic; } 221 Void setILRPic(TComPic *pcPic);222 221 #if REF_IDX_MFM 223 222 Void setMFMEnabledFlag (Bool flag) {m_bMFMEnabledFlag = flag;}
Note: See TracChangeset for help on using the changeset viewer.