# 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

Reply via email to