HEVC代码追踪(九):帧间->xCheckRDCostInter
2014-11-30 16:27
162 查看
#if AMP_MRG Void TEncCu::xCheckRDCostInter( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU, PartSize ePartSize, Bool bUseMRG) #else Void TEncCu::xCheckRDCostInter( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU, PartSize ePartSize ) #endif { UChar uhDepth = rpcTempCU->getDepth( 0 ); rpcTempCU->setDepthSubParts( uhDepth, 0 ); rpcTempCU->setSkipFlagSubParts( false, 0, uhDepth ); rpcTempCU->setPartSizeSubParts ( ePartSize, 0, uhDepth ); rpcTempCU->setPredModeSubParts ( MODE_INTER, 0, uhDepth ); #if AMP_MRG rpcTempCU->setMergeAMP (true); m_pcPredSearch->predInterSearch ( rpcTempCU, m_ppcOrigYuv[uhDepth], m_ppcPredYuvTemp[uhDepth], m_ppcResiYuvTemp[uhDepth], m_ppcRecoYuvTemp[uhDepth], false, bUseMRG ); #else m_pcPredSearch->predInterSearch ( rpcTempCU, m_ppcOrigYuv[uhDepth], m_ppcPredYuvTemp[uhDepth], m_ppcResiYuvTemp[uhDepth], m_ppcRecoYuvTemp[uhDepth] ); #endif #if AMP_MRG if ( !rpcTempCU->getMergeAMP() ) { return; } #endif m_pcPredSearch->encodeResAndCalcRdInterCU( rpcTempCU, m_ppcOrigYuv[uhDepth], m_ppcPredYuvTemp[uhDepth], m_ppcResiYuvTemp[uhDepth], m_ppcResiYuvBest[uhDepth], m_ppcRecoYuvTemp[uhDepth], false ); rpcTempCU->getTotalCost() = m_pcRdCost->calcRdCost( rpcTempCU->getTotalBits(), rpcTempCU->getTotalDistortion() ); xCheckDQP( rpcTempCU ); xCheckBestMode(rpcBestCU, rpcTempCU, uhDepth); }
相关文章推荐
- HEVC代码追踪(九):帧间->xCheckRDCostInter
- HEVC代码追踪(八):帧内->xCheckRDCostIntra
- HEVC代码追踪(八):帧内->xCheckRDCostIntra
- HEVC代码追踪(十):量化->xCheckIntraPCM
- FVC/JEM代码学习22:xCheckRDCostInterKLT
- HTM-16.2代码(4)——xCheckRDCostInter
- FVC/JEM代码学习18:xCheckRDCostInter
- HEVC代码追踪(十):量化->xCheckIntraPCM
- HEVC代码追踪(三):encode->compressGOP
- FVC/JEM代码学习20:xCheckRDCostIntra
- xCheckRDCostInter
- HEVC代码追踪(三):encode->compressGOP
- HEVC代码追踪(七):xCompressCu
- HEVC代码追踪(六):compressCU
- HEVC代码追踪(四。三)
- HEVC代码追踪(四。一)
- HEVC代码追踪(八。一):estIntraPredQT
- HEVC代码追踪(八。二):estIntraPredChromaQT
- HEVC代码追踪(五):compressSlice
- HEVC代码追踪(四。四)