# HG changeset patch
# User Aruna Matheswaran <[email protected]>
# Date 1579523879 -19800
# Mon Jan 20 18:07:59 2020 +0530
# Node ID acc5d16999e2faf6e75ecc1df9a01c1953ebaf8c
# Parent 8e6db24c1517f6f160f0e7e62deba44fc2b69d88
analysis-save/load: fix crash during analysis sharing between non-dyadic
resolutions.
diff -r 8e6db24c1517 -r acc5d16999e2 source/encoder/encoder.cpp
--- a/source/encoder/encoder.cpp Mon Jan 06 23:08:36 2020 +0530
+++ b/source/encoder/encoder.cpp Mon Jan 20 18:07:59 2020 +0530
@@ -3780,9 +3780,10 @@
x265_log(NULL, X265_LOG_ERROR, "Error reading analysis data.
Conformance window right offset missing\n");
m_aborted = true;
}
- else if (m_conformanceWindow.rightOffset)
+ else if (m_conformanceWindow.rightOffset &&
p->analysisLoadReuseLevel > 1)
{
- padsize = m_conformanceWindow.rightOffset * 2;
+ int scaleFactor = p->scaleFactor < 2 ? 1 : p->scaleFactor;
+ padsize = m_conformanceWindow.rightOffset * scaleFactor;
p->sourceWidth += padsize;
m_conformanceWindow.bEnabled = true;
m_conformanceWindow.rightOffset = padsize;
@@ -3793,9 +3794,10 @@
x265_log(NULL, X265_LOG_ERROR, "Error reading analysis data.
Conformance window bottom offset missing\n");
m_aborted = true;
}
- else if (m_conformanceWindow.bottomOffset)
+ else if (m_conformanceWindow.bottomOffset &&
p->analysisLoadReuseLevel > 1)
{
- padsize = m_conformanceWindow.bottomOffset * 2;
+ int scaleFactor = p->scaleFactor < 2 ? 1 : p->scaleFactor;
+ padsize = m_conformanceWindow.bottomOffset * scaleFactor;
p->sourceHeight += padsize;
m_conformanceWindow.bEnabled = true;
m_conformanceWindow.bottomOffset = padsize;
# HG changeset patch
# User Aruna Matheswaran <[email protected]>
# Date 1579523879 -19800
# Mon Jan 20 18:07:59 2020 +0530
# Node ID acc5d16999e2faf6e75ecc1df9a01c1953ebaf8c
# Parent 8e6db24c1517f6f160f0e7e62deba44fc2b69d88
analysis-save/load: fix crash during analysis sharing between non-dyadic
resolutions.
diff -r 8e6db24c1517 -r acc5d16999e2 source/encoder/encoder.cpp
--- a/source/encoder/encoder.cpp Mon Jan 06 23:08:36 2020 +0530
+++ b/source/encoder/encoder.cpp Mon Jan 20 18:07:59 2020 +0530
@@ -3780,9 +3780,10 @@
x265_log(NULL, X265_LOG_ERROR, "Error reading analysis data. Conformance window right offset missing\n");
m_aborted = true;
}
- else if (m_conformanceWindow.rightOffset)
+ else if (m_conformanceWindow.rightOffset && p->analysisLoadReuseLevel > 1)
{
- padsize = m_conformanceWindow.rightOffset * 2;
+ int scaleFactor = p->scaleFactor < 2 ? 1 : p->scaleFactor;
+ padsize = m_conformanceWindow.rightOffset * scaleFactor;
p->sourceWidth += padsize;
m_conformanceWindow.bEnabled = true;
m_conformanceWindow.rightOffset = padsize;
@@ -3793,9 +3794,10 @@
x265_log(NULL, X265_LOG_ERROR, "Error reading analysis data. Conformance window bottom offset missing\n");
m_aborted = true;
}
- else if (m_conformanceWindow.bottomOffset)
+ else if (m_conformanceWindow.bottomOffset && p->analysisLoadReuseLevel > 1)
{
- padsize = m_conformanceWindow.bottomOffset * 2;
+ int scaleFactor = p->scaleFactor < 2 ? 1 : p->scaleFactor;
+ padsize = m_conformanceWindow.bottomOffset * scaleFactor;
p->sourceHeight += padsize;
m_conformanceWindow.bEnabled = true;
m_conformanceWindow.bottomOffset = padsize;
_______________________________________________
x265-devel mailing list
[email protected]
https://mailman.videolan.org/listinfo/x265-devel