<div dir="ltr"><div><div># HG changeset patch</div><div># User Deepthi Nandakumar <<a href="mailto:deepthi@multicorewareinc.com">deepthi@multicorewareinc.com</a>></div><div># Date 1456912786 -19800</div><div># Wed Mar 02 15:29:46 2016 +0530</div><div># Node ID b043f1d2c2c0e25a67730508b1397378498fa364</div><div># Parent 39b9334593cfe67b24d998ade2fa1895f342afb3</div><div>search: remove RDOQ level initialisations in initSearch</div><div><br></div><div>diff -r 39b9334593cf -r b043f1d2c2c0 source/encoder/search.cpp</div><div>--- a/source/encoder/search.cpp<span class="" style="white-space:pre"> </span>Wed Mar 02 16:21:55 2016 +0530</div><div>+++ b/source/encoder/search.cpp<span class="" style="white-space:pre"> </span>Wed Mar 02 15:29:46 2016 +0530</div><div>@@ -73,7 +73,6 @@</div><div> {</div><div> uint32_t maxLog2CUSize = g_log2Size[param.maxCUSize];</div><div> m_param = ¶m;</div><div>- m_bEnableRDOQ = !!param.rdoqLevel;</div><div> m_bFrameParallel = param.frameNumThreads > 1;</div><div> m_numLayers = g_log2Size[param.maxCUSize] - 2;</div><div> </div><div>@@ -296,6 +295,7 @@</div><div> uint32_t sizeIdx = log2TrSize - 2;</div><div> bool mightNotSplit = log2TrSize <= depthRange[1];</div><div> bool mightSplit = (log2TrSize > depthRange[0]) && (bAllowSplit || !mightNotSplit);</div><div>+ bool bEnableRDOQ = !!m_param->rdoqLevel;</div><div> </div><div> /* If maximum RD penalty, force spits at TU size 32x32 if SPS allows TUs of 16x16 */</div><div> if (m_param->rdPenalty == 2 && m_slice->m_sliceType != I_SLICE && log2TrSize == 5 && depthRange[0] <= 4)</div><div>@@ -336,7 +336,7 @@</div><div> coeff_t* coeffY = m_rqt[qtLayer].coeffRQT[0] + coeffOffsetY;</div><div> </div><div> // store original entropy coding status</div><div>- if (m_bEnableRDOQ)</div><div>+ if (bEnableRDOQ)</div><div> m_entropyCoder.estBit(m_entropyCoder.m_estBitsSbac, log2TrSize, true);</div><div> </div><div> <a href="http://primitives.cu">primitives.cu</a>[sizeIdx].calcresidual(fenc, pred, residual, stride);</div><div>@@ -487,6 +487,7 @@</div><div> uint32_t fullDepth = cuGeom.depth + tuDepth;</div><div> uint32_t log2TrSize = cuGeom.log2CUSize - tuDepth;</div><div> uint32_t tuSize = 1 << log2TrSize;</div><div>+ bool bEnableRDOQ = !!m_param->rdoqLevel;</div><div> </div><div> X265_CHECK(tuSize <= MAX_TS_SIZE, "transform skip is only possible at 4x4 TUs\n");</div><div> </div><div>@@ -525,7 +526,7 @@</div><div> // store original entropy coding status</div><div> m_entropyCoder.store(m_rqt[fullDepth].rqtRoot);</div><div> </div><div>- if (m_bEnableRDOQ)</div><div>+ if (bEnableRDOQ)</div><div> m_entropyCoder.estBit(m_entropyCoder.m_estBitsSbac, log2TrSize, true);</div><div> </div><div> int checkTransformSkip = 1;</div><div>@@ -782,6 +783,7 @@</div><div> {</div><div> CUData& cu = <a href="http://mode.cu">mode.cu</a>;</div><div> uint32_t log2TrSize = cuGeom.log2CUSize - tuDepth;</div><div>+ bool bEnableRDOQ = !!m_param->rdoqLevel;</div><div> </div><div> if (tuDepth < cu.m_tuDepth[absPartIdx])</div><div> {</div><div>@@ -812,7 +814,7 @@</div><div> tuDepthC--;</div><div> }</div><div> </div><div>- if (m_bEnableRDOQ)</div><div>+ if (bEnableRDOQ)</div><div> m_entropyCoder.estBit(m_entropyCoder.m_estBitsSbac, log2TrSizeC, false);</div><div> </div><div> bool checkTransformSkip = m_slice->m_pps->bTransformSkipEnabled && log2TrSizeC <= MAX_LOG2_TS_SIZE && !cu.m_tqBypass[0];</div><div>@@ -2840,6 +2842,7 @@</div><div> CUData& cu = <a href="http://mode.cu">mode.cu</a>;</div><div> uint32_t depth = cuGeom.depth + tuDepth;</div><div> uint32_t log2TrSize = cuGeom.log2CUSize - tuDepth;</div><div>+ bool bEnableRDOQ = !!m_param->rdoqLevel;</div><div> </div><div> bool bCheckSplit = log2TrSize > depthRange[0];</div><div> bool bCheckFull = log2TrSize <= depthRange[1];</div><div>@@ -2897,7 +2900,7 @@</div><div> cu.setTUDepthSubParts(tuDepth, absPartIdx, depth);</div><div> cu.setTransformSkipSubParts(0, TEXT_LUMA, absPartIdx, depth);</div><div> </div><div>- if (m_bEnableRDOQ)</div><div>+ if (bEnableRDOQ)</div><div> m_entropyCoder.estBit(m_entropyCoder.m_estBitsSbac, log2TrSize, true);</div><div> </div><div> const pixel* fenc = fencYuv->getLumaAddr(absPartIdx);</div><div>@@ -3011,7 +3014,7 @@</div><div> </div><div> cu.setTransformSkipPartRange(0, (TextType)chromaId, absPartIdxC, tuIterator.absPartIdxStep);</div><div> </div><div>- if (m_bEnableRDOQ && (chromaId != TEXT_CHROMA_V))</div><div>+ if (bEnableRDOQ && (chromaId != TEXT_CHROMA_V))</div><div> m_entropyCoder.estBit(m_entropyCoder.m_estBitsSbac, log2TrSizeC, false);</div><div> </div><div> fenc = fencYuv->getChromaAddr(chromaId, absPartIdxC);</div><div>@@ -3112,7 +3115,7 @@</div><div> </div><div> cu.setTransformSkipSubParts(1, TEXT_LUMA, absPartIdx, depth);</div><div> </div><div>- if (m_bEnableRDOQ)</div><div>+ if (bEnableRDOQ)</div><div> m_entropyCoder.estBit(m_entropyCoder.m_estBitsSbac, log2TrSize, true);</div><div> </div><div> fenc = fencYuv->getLumaAddr(absPartIdx);</div><div>@@ -3180,7 +3183,7 @@</div><div> </div><div> cu.setTransformSkipPartRange(1, (TextType)chromaId, absPartIdxC, tuIterator.absPartIdxStep);</div><div> </div><div>- if (m_bEnableRDOQ && (chromaId != TEXT_CHROMA_V))</div><div>+ if (bEnableRDOQ && (chromaId != TEXT_CHROMA_V))</div><div> m_entropyCoder.estBit(m_entropyCoder.m_estBitsSbac, log2TrSizeC, false);</div><div> </div><div> fenc = fencYuv->getChromaAddr(chromaId, absPartIdxC);</div><div>diff -r 39b9334593cf -r b043f1d2c2c0 source/encoder/search.h</div><div>--- a/source/encoder/search.h<span class="" style="white-space:pre"> </span>Wed Mar 02 16:21:55 2016 +0530</div><div>+++ b/source/encoder/search.h<span class="" style="white-space:pre"> </span>Wed Mar 02 15:29:46 2016 +0530</div><div>@@ -272,7 +272,6 @@</div><div> pixel* m_tsRecon; /* transform skip reconstructed pixels 32x32 */</div><div> </div><div> bool m_bFrameParallel;</div><div>- bool m_bEnableRDOQ;</div><div> uint32_t m_numLayers;</div><div> uint32_t m_refLagPixels;</div><div> </div></div><div><br></div>
</div>