[x265] [PATCH] fix logic bug in weight module (the latest row was not weighted)
chen
chenm003 at 163.com
Mon Nov 14 20:56:21 CET 2016
# HG changeset patch
# User Min Chen <min.chen at multicorewareinc.com>
# Date 1479149577 21600
# Node ID a4376f9b27749620c9beee1c401dbed34a570751
# Parent a378efc939e37f13ec1673fda055b1c3d0632e68
fix logic bug in weight module (the latest row was not weighted)
---
source/encoder/reference.cpp | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff -r a378efc939e3 -r a4376f9b2774 source/encoder/reference.cpp
--- a/source/encoder/reference.cppSun Nov 06 23:24:16 2016 +0100
+++ b/source/encoder/reference.cppMon Nov 14 12:52:57 2016 -0600
@@ -128,11 +128,12 @@
intptr_t stride = reconPic->m_stride;
int width = reconPic->m_picWidth;
int height = (finishedRows - numWeightedRows) * g_maxCUSize;
- if ((finishedRows == maxNumRows) && (reconPic->m_picHeight % g_maxCUSize))
+ /* the last row may be partial height */
+ if (finishedRows == maxNumRows - 1)
{
- /* the last row may be partial height */
- height -= g_maxCUSize;
- height += reconPic->m_picHeight % g_maxCUSize;
+ const int leftRows = (reconPic->m_picHeight & (g_maxCUSize - 1));
+
+ height += leftRows ? leftRows : g_maxCUSize;
}
int cuHeight = g_maxCUSize;
@@ -172,7 +173,7 @@
}
// Extending Bottom
- if (finishedRows == maxNumRows)
+ if (finishedRows == maxNumRows - 1)
{
int picHeight = reconPic->m_picHeight;
if (c) picHeight >>= reconPic->m_vChromaShift;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20161115/b7ac7c6d/attachment.html>
More information about the x265-devel
mailing list