[x265] [PATCH] fix non-determination output after apply new preset parameter sets
chen
chenm003 at 163.com
Mon Jan 4 05:49:48 CET 2016
End of function, below code made bug
if (!m_param->limitModes)
{
splitCUData.mvCost[0] = 0; // L0
splitCUData.mvCost[1] = 0; // L1
splitCUData.rdCost = 0;
}
else
{
splitCUData.mvCost[0] = md.pred[PRED_2Nx2N].bestME[0][0].mvCost; // L0
splitCUData.mvCost[1] = md.pred[PRED_2Nx2N].bestME[0][1].mvCost; // L1
splitCUData.rdCost = md.pred[PRED_2Nx2N].sa8dCost;
}
At 2016-01-04 12:47:25,"Deepthi Nandakumar" <deepthi at multicorewareinc.com> wrote:
Min, can you elaborate? Where is bestME being used uninitialised?
On Fri, Jan 1, 2016 at 2:48 AM, Min Chen <chenm003 at 163.com> wrote:
# HG changeset patch
# User Min Chen <chenm003 at 163.com>
# Date 1451594594 21600
# Node ID e5abd9b22f52fb8800068a2c699aea1648b69f54
# Parent fb58aa76a9ae1eb6b0bac37f34bc418ba2ce941c
fix non-determination output after apply new preset parameter sets
---
source/encoder/analysis.cpp | 16 ++++++++++++++++
1 files changed, 16 insertions(+), 0 deletions(-)
diff -r fb58aa76a9ae -r e5abd9b22f52 source/encoder/analysis.cpp
--- a/source/encoder/analysis.cpp Thu Dec 31 12:54:33 2015 -0600
+++ b/source/encoder/analysis.cpp Thu Dec 31 14:43:14 2015 -0600
@@ -836,6 +836,14 @@
splitData[2].initSplitCUData();
splitData[3].initSplitCUData();
+ // avoid uninitialize value in below reference
+ if (m_param->limitModes)
+ {
+ md.pred[PRED_2Nx2N].bestME[0][0].mvCost = 0; // L0
+ md.pred[PRED_2Nx2N].bestME[0][1].mvCost = 0; // L1
+ md.pred[PRED_2Nx2N].rdCost = 0;
+ }
+
/* Step 1. Evaluate Merge/Skip candidates for likely early-outs */
if (mightNotSplit && depth >= minDepth)
{
@@ -1304,6 +1312,14 @@
bool foundSkip = false;
bool splitIntra = true;
+ // avoid uninitialize value in below reference
+ if (m_param->limitModes)
+ {
+ md.pred[PRED_2Nx2N].bestME[0][0].mvCost = 0; // L0
+ md.pred[PRED_2Nx2N].bestME[0][1].mvCost = 0; // L1
+ md.pred[PRED_2Nx2N].rdCost = 0;
+ }
+
if (m_param->analysisMode == X265_ANALYSIS_LOAD)
{
uint8_t* reuseDepth = &m_reuseInterDataCTU->depth[parentCTU.m_cuAddr * parentCTU.m_numPartitions];
_______________________________________________
x265-devel mailing list
x265-devel at videolan.org
https://mailman.videolan.org/listinfo/x265-devel
--
Deepthi Nandakumar
Engineering Manager, x265
Multicoreware, Inc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20160104/02faae73/attachment.html>
More information about the x265-devel
mailing list