<div dir="ltr">Thanks, pushed<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Feb 19, 2014 at 4:35 PM,  <span dir="ltr"><<a href="mailto:ashok@multicorewareinc.com" target="_blank">ashok@multicorewareinc.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"># HG changeset patch<br>
# User <a href="mailto:ashok@multicorewareinc.com">ashok@multicorewareinc.com</a><br>
# Date 1392807860 -19800<br>
#      Wed Feb 19 16:34:20 2014 +0530<br>
# Node ID f0e4f6aa075587f715a7cd48ef63f97d56caa21a<br>
# Parent  8571d160aedb00e07a3f47016f04d8d9aeaa5856<br>
fix for 420 binary mismatch for --preset=slower option<br>
<br>
diff -r 8571d160aedb -r f0e4f6aa0755 source/Lib/TLibCommon/TComDataCU.cpp<br>
--- a/source/Lib/TLibCommon/TComDataCU.cpp      Tue Feb 18 01:43:42 2014 -0600<br>
+++ b/source/Lib/TLibCommon/TComDataCU.cpp      Wed Feb 19 16:34:20 2014 +0530<br>
@@ -2852,7 +2852,7 @@<br>
                                        + (partWidth / m_pic->getMinCUWidth()) / 2];<br>
 }<br>
<br>
-uint32_t TComDataCU::getCoefScanIdx(uint32_t absPartIdx, uint32_t width, bool bIsLuma, bool bIsIntra)<br>
+uint32_t TComDataCU::getCoefScanIdx(uint32_t absPartIdx, uint32_t width, uint32_t height, bool bIsLuma, bool bIsIntra)<br>
 {<br>
     uint32_t scanIdx;<br>
     uint32_t dirMode;<br>
@@ -2863,7 +2863,6 @@<br>
     }<br>
     //check that MDCS can be used for this TU<br>
<br>
-    uint32_t height = width;<br>
     if (bIsLuma)<br>
     {<br>
         const uint32_t maximumWidth  = MDCS_MAXIMUM_WIDTH;<br>
diff -r 8571d160aedb -r f0e4f6aa0755 source/Lib/TLibCommon/TComDataCU.h<br>
--- a/source/Lib/TLibCommon/TComDataCU.h        Tue Feb 18 01:43:42 2014 -0600<br>
+++ b/source/Lib/TLibCommon/TComDataCU.h        Wed Feb 19 16:34:20 2014 +0530<br>
@@ -473,7 +473,7 @@<br>
<br>
     uint32_t&     getTotalNumPart()               { return m_numPartitions; }<br>
<br>
-    uint32_t      getCoefScanIdx(uint32_t absPartIdx, uint32_t width, bool bIsLuma, bool bIsIntra);<br>
+    uint32_t      getCoefScanIdx(uint32_t absPartIdx, uint32_t width, uint32_t height, bool bIsLuma, bool bIsIntra);<br>
<br>
     // -------------------------------------------------------------------------------------------------------------------<br>
     // member functions to support multiple color space formats<br>
diff -r 8571d160aedb -r f0e4f6aa0755 source/Lib/TLibCommon/TComTrQuant.cpp<br>
--- a/source/Lib/TLibCommon/TComTrQuant.cpp     Tue Feb 18 01:43:42 2014 -0600<br>
+++ b/source/Lib/TLibCommon/TComTrQuant.cpp     Wed Feb 19 16:34:20 2014 +0530<br>
@@ -502,7 +502,7 @@<br>
     const uint32_t                 log2BlockWidth  = g_convertToBit[width]  + 2;<br>
     const uint32_t                 log2BlockHeight = g_convertToBit[height] + 2;<br>
<br>
-    result.scanType = COEFF_SCAN_TYPE(cu->getCoefScanIdx(absPartIdx, width, ttype == TEXT_LUMA, cu->isIntra(absPartIdx)));<br>
+    result.scanType = COEFF_SCAN_TYPE(cu->getCoefScanIdx(absPartIdx, width, height, ttype == TEXT_LUMA, cu->isIntra(absPartIdx)));<br>
<br>
     //set the group layout<br>
     result.widthInGroups  = width  >> MLS_CG_LOG2_WIDTH;<br>
@@ -516,19 +516,20 @@<br>
     result.scanCG = g_scanOrder[SCAN_UNGROUPED][result.scanType][log2WidthInGroups][log2HeightInGroups];<br>
<br>
     //set the significance map context selection parameters<br>
+    TextType ctype = ttype == TEXT_LUMA ? TEXT_LUMA : TEXT_CHROMA;<br>
     if ((width == 4) && (height == 4))<br>
     {<br>
-        result.firstSignificanceMapContext = significanceMapContextSetStart[ttype][CONTEXT_TYPE_4x4];<br>
+        result.firstSignificanceMapContext = significanceMapContextSetStart[ctype][CONTEXT_TYPE_4x4];<br>
     }<br>
     else if ((width == 8) && (height == 8))<br>
     {<br>
-        result.firstSignificanceMapContext = significanceMapContextSetStart[ttype][CONTEXT_TYPE_8x8];<br>
+        result.firstSignificanceMapContext = significanceMapContextSetStart[ctype][CONTEXT_TYPE_8x8];<br>
         if (result.scanType != SCAN_DIAG)<br>
-            result.firstSignificanceMapContext += nonDiagonalScan8x8ContextOffset[ttype];<br>
+            result.firstSignificanceMapContext += nonDiagonalScan8x8ContextOffset[ctype];<br>
     }<br>
     else<br>
     {<br>
-        result.firstSignificanceMapContext = significanceMapContextSetStart[ttype][CONTEXT_TYPE_NxN];<br>
+        result.firstSignificanceMapContext = significanceMapContextSetStart[ctype][CONTEXT_TYPE_NxN];<br>
     }<br>
 }<br>
<br>
@@ -1124,8 +1125,8 @@<br>
         }<br>
<br>
         const bool notFirstGroup = ((posX >> MLS_CG_LOG2_WIDTH) + (posY >> MLS_CG_LOG2_HEIGHT)) > 0;<br>
-<br>
-        offset = (notFirstGroup ? notFirstGroupNeighbourhoodContextOffset[ttype] : 0) + cnt;<br>
+        TextType ctype = ttype == TEXT_LUMA ? TEXT_LUMA : TEXT_CHROMA;<br>
+        offset = (notFirstGroup ? notFirstGroupNeighbourhoodContextOffset[ctype] : 0) + cnt;<br>
     }<br>
     return codingParameters.firstSignificanceMapContext + offset;<br>
 }<br>
diff -r 8571d160aedb -r f0e4f6aa0755 source/Lib/TLibEncoder/TEncSbac.cpp<br>
--- a/source/Lib/TLibEncoder/TEncSbac.cpp       Tue Feb 18 01:43:42 2014 -0600<br>
+++ b/source/Lib/TLibEncoder/TEncSbac.cpp       Wed Feb 19 16:34:20 2014 +0530<br>
@@ -942,7 +942,7 @@<br>
 void TEncSbac::xCodeScalingList(TComScalingList* scalingList, uint32_t sizeId, uint32_t listId)<br>
 {<br>
     int coefNum = X265_MIN(MAX_MATRIX_COEF_NUM, (int)g_scalingListSize[sizeId]);<br>
-    const uint32_t* scan  = (sizeId == 0) ? g_sigLastScan[SCAN_DIAG][1] :  g_sigLastScanCG32x32;<br>
+    const uint32_t* scan  = g_scanOrder[SCAN_UNGROUPED][SCAN_DIAG][sizeId==0 ? 2 : 3][sizeId==0 ? 2 : 3];<br>
     int nextCoef = SCALING_LIST_START_VALUE;<br>
     int data;<br>
     int32_t *src = scalingList->getScalingListAddress(sizeId, listId);<br>
_______________________________________________<br>
x265-devel mailing list<br>
<a href="mailto:x265-devel@videolan.org">x265-devel@videolan.org</a><br>
<a href="https://mailman.videolan.org/listinfo/x265-devel" target="_blank">https://mailman.videolan.org/listinfo/x265-devel</a><br>
</blockquote></div><br></div>