Mercurial > x265
changeset 5763:cee9a8cd6fdf draft
rd: check DQP before best cu is copied to the pic in rd 0
author | Deepthi Devaki <deepthidevaki@multicorewareinc.com> |
---|---|
date | Tue, 17 Dec 2013 15:17:42 +0530 |
parents | d03080cf1551 |
children | e563014d176c |
files | source/encoder/compress.cpp |
diffstat | 1 files changed, 3 insertions(+-), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/source/encoder/compress.cpp Tue Dec 17 15:09:43 2013 +0530 +++ b/source/encoder/compress.cpp Tue Dec 17 15:17:42 2013 +0530 @@ -607,6 +607,7 @@ void TEncCu::xCompressInterCU(TComDataCU if (m_mergeCU[depth]->m_totalDistortion < threshold[index]) { m_mergeCU[depth]->setSkipFlagSubParts(true, 0, depth); + xCheckDQP(m_mergeCU[depth]); outBestCU = m_mergeCU[depth]; if (bestMergePred != m_bestPredYuv[depth]) { @@ -899,6 +900,7 @@ void TEncCu::encodeResidue(TComDataCU* l //Residual encoding m_search->residualTransformQuantInter(cu, 0, 0, m_tmpResiYuv[depth], cu->getDepth(0), true); + xCheckDQP(cu); if (lcu->getMergeFlag(absPartIdx) && cu->getPartitionSize(0) == SIZE_2Nx2N && !cu->getQtRootCbf(0)) { @@ -931,7 +933,6 @@ void TEncCu::encodeResidue(TComDataCU* l reco = m_bestRecoYuv[0]->getCrAddr(absPartIdx); primitives.chroma[m_cfg->param.internalCsp].add_ps[part](reco, dststride, pred, res, src1stride, src2stride); m_bestRecoYuv[0]->copyToPicYuv(lcu->getPic()->getPicYuvRec(), lcu->getAddr(), 0); - xCheckDQP(cu); return; } } @@ -959,9 +960,9 @@ void TEncCu::encodeResidue(TComDataCU* l { m_origYuv[0]->copyPartToYuv(m_origYuv[depth], absPartIdx); m_search->generateCoeffRecon(cu, m_origYuv[depth], m_modePredYuv[5][depth], m_tmpResiYuv[depth], m_tmpRecoYuv[depth], false); + xCheckDQP(cu); m_tmpRecoYuv[depth]->copyToPicYuv(cu->getPic()->getPicYuvRec(), lcu->getAddr(), absPartIdx); m_tmpRecoYuv[depth]->copyToPartYuv(m_bestRecoYuv[0], absPartIdx); cu->copyCodedToPic(depth); } - xCheckDQP(cu); }