[x265] [PATCH] [x265 patch] analysis: For inter-refine level 1, evaluate smaller CU sizes only when the current
Dinesh Kumar Reddy
dinesh at multicorewareinc.com
Tue May 14 13:28:33 CEST 2019
# HG changeset patch
# User gopi Satykrishna Akisetty
# Date 1556272415 -19800
# Fri Apr 26 15:23:35 2019 +0530
# Node ID b0db87e717e8b3629550aa67d734d5d74de0c66b
# Parent bac0e1acb874213d4002f47ce88d6abe2475d957
[x265 patch] analysis: For inter-refine level 1, evaluate smaller CU sizes
only when the current
block is decided as "skip" by the save mode
Pushed patch to x265 public.
Thanks & Regards,
Dinesh
On Thu, May 2, 2019 at 6:44 PM <gopi.satykrishna at multicorewareinc.com>
wrote:
> # HG changeset patch
> # User gopi Satykrishna Akisetty
> # Date 1556272415 -19800
> # Fri Apr 26 15:23:35 2019 +0530
> # Node ID b0db87e717e8b3629550aa67d734d5d74de0c66b
> # Parent bac0e1acb874213d4002f47ce88d6abe2475d957
> [x265 patch] analysis: For inter-refine level 1, evaluate smaller CU sizes
> only when the current
> block is decided as "skip" by the save mode
>
> diff -r bac0e1acb874 -r b0db87e717e8 source/encoder/analysis.cpp
> --- a/source/encoder/analysis.cpp Sat Apr 13 16:03:05 2019 +0200
> +++ b/source/encoder/analysis.cpp Fri Apr 26 15:23:35 2019 +0530
> @@ -2412,6 +2412,7 @@
> bool mightSplit = !(cuGeom.flags & CUGeom::LEAF);
> bool mightNotSplit = !(cuGeom.flags & CUGeom::SPLIT_MANDATORY);
> bool bDecidedDepth = parentCTU.m_cuDepth[cuGeom.absPartIdx] == depth;
> + int split = 0;
>
> TrainingData td;
> td.init(parentCTU, cuGeom);
> @@ -2420,8 +2421,13 @@
> m_refineLevel = m_param->interRefine;
> else
> m_refineLevel = m_frame->m_classifyFrame ? 1 : 3;
> - int split = (m_param->scaleFactor && bDecidedDepth && (!mightNotSplit
> ||
> - (m_refineLevel && cuGeom.log2CUSize ==
> (uint32_t)(g_log2Size[m_param->minCUSize] + 1))));
> +
> + if (m_param->interRefine == 1)
> + split = (m_param->scaleFactor && bDecidedDepth &&
> parentCTU.m_predMode[cuGeom.absPartIdx] == MODE_SKIP && (!mightNotSplit ||
> + (m_refineLevel && cuGeom.log2CUSize ==
> (uint32_t)(g_log2Size[m_param->minCUSize] + 1))));
> + else
> + split = (m_param->scaleFactor && bDecidedDepth && (!mightNotSplit
> ||
> + (m_refineLevel && cuGeom.log2CUSize ==
> (uint32_t)(g_log2Size[m_param->minCUSize] + 1))));
> td.split = split;
>
> if ((bDecidedDepth && mightNotSplit) || (m_param->bAnalysisType ==
> HEVC_INFO && parentCTU.m_cuDepth[cuGeom.absPartIdx] == 4))
> _______________________________________________
> x265-devel mailing list
> x265-devel at videolan.org
> https://mailman.videolan.org/listinfo/x265-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20190514/4ffe5f98/attachment.html>
More information about the x265-devel
mailing list