# HG changeset patch # User Bhavna Hariharan <bha...@multicorewareinc.com> # Date 1495535309 -19800 # Tue May 23 15:58:29 2017 +0530 # Node ID 4d90dbc63f7e6fa389dda62430e2dfd3d02e4c84 # Parent d103464b81751a917ec20a02c412f92d0846692a intra refinement: Evaluates all intra modes for smallest cu size in load run
diff -r d103464b8175 -r 4d90dbc63f7e source/encoder/analysis.cpp --- a/source/encoder/analysis.cpp Wed May 31 18:52:23 2017 +0530 +++ b/source/encoder/analysis.cpp Tue May 23 15:58:29 2017 +0530 @@ -495,6 +495,13 @@ bool bAlreadyDecided = parentCTU.m_lumaIntraDir[cuGeom.absPartIdx] != (uint8_t)ALL_IDX; bool bDecidedDepth = parentCTU.m_cuDepth[cuGeom.absPartIdx] == depth; + int split = 0; + if (m_param->intraRefine) + { + split = ((cuGeom.log2CUSize == (uint32_t)(g_log2Size[m_param->minCUSize] + 1)) && bDecidedDepth); + if (cuGeom.log2CUSize == (uint32_t)(g_log2Size[m_param->minCUSize]) && !bDecidedDepth) + bAlreadyDecided = false; + } if (bAlreadyDecided) { @@ -535,7 +542,7 @@ } // stop recursion if we reach the depth of previous analysis decision - mightSplit &= !(bAlreadyDecided && bDecidedDepth); + mightSplit &= !(bAlreadyDecided && bDecidedDepth) || split; if (mightSplit) { _______________________________________________ x265-devel mailing list x265-devel@videolan.org https://mailman.videolan.org/listinfo/x265-devel