[x265] [PATCH] Reset CABAC status to get same output between single and multi threading

Min Chen chenm003 at 163.com
Tue Sep 24 09:34:08 CEST 2013


# HG changeset patch
# User Min Chen <chenm003 at 163.com>
# Date 1380008038 -28800
# Node ID 24ee870a56655b89cc43c60e14aa6aadb412ead8
# Parent  ad78668116108242def30a1ce3e8d14c52323346
Reset CABAC status to get same output between single and multi threading

diff -r ad7866811610 -r 24ee870a5665 source/encoder/frameencoder.cpp
--- a/source/encoder/frameencoder.cpp	Mon Sep 23 20:09:53 2013 -0500
+++ b/source/encoder/frameencoder.cpp	Tue Sep 24 15:33:58 2013 +0800
@@ -843,6 +843,7 @@
 
         m_rows[i].m_rdSbacCoders[0][CI_CURR_BEST]->load(&m_sbacCoder);
         m_rows[i].m_completed = 0;
+        m_rows[i].m_rdGoOnBinCodersCABAC.m_fracBits = 0;
     }
 
     UInt refLagRows = ((m_cfg->param.searchRange + NTAPS_LUMA/2 + g_maxCUHeight - 1) / g_maxCUHeight) + 1;
diff -r ad7866811610 -r 24ee870a5665 source/encoder/framefilter.cpp
--- a/source/encoder/framefilter.cpp	Mon Sep 23 20:09:53 2013 -0500
+++ b/source/encoder/framefilter.cpp	Tue Sep 24 15:33:58 2013 +0800
@@ -85,6 +85,7 @@
     m_rdGoOnSbacCoder.init(&m_rdGoOnBinCodersCABAC);
     m_entropyCoder.setEntropyCoder(&m_rdGoOnSbacCoder, pic->getSlice());
     m_entropyCoder.setBitstream(&m_bitCounter);
+    m_rdGoOnBinCodersCABAC.m_fracBits = 0;
 
     if (m_cfg->param.bEnableLoopFilter)
     {



More information about the x265-devel mailing list