[x265] [PATCH] Fix for build error in ffmpeg

ashok at multicorewareinc.com ashok at multicorewareinc.com
Wed Jul 25 11:00:25 CEST 2018


# HG changeset patch
# User Ashok Kumar Mishra <ashok at multicorewareinc.com>
# Date 1532498266 -19800
#      Wed Jul 25 11:27:46 2018 +0530
# Node ID 85c222dbd0d94568fd0e55af0bae5a4a2a8ae9da
# Parent  c258d214c978a5c64ec8dd3986a3b3cc3d2381ac
Fix for build error in ffmpeg

diff -r c258d214c978 -r 85c222dbd0d9 source/common/predict.cpp
--- a/source/common/predict.cpp	Mon Jul 23 15:36:44 2018 +0530
+++ b/source/common/predict.cpp	Wed Jul 25 11:27:46 2018 +0530
@@ -91,7 +91,7 @@
         MV mv0 = cu.m_mv[0][pu.puAbsPartIdx];
         cu.clipMv(mv0);
 
-        if (cu.m_slice->m_pps->bUseWeightPred && wp0->bPresentFlag)
+        if (cu.m_slice->m_pps->bUseWeightPred && wp0->wtPresent)
         {
             for (int plane = 0; plane < (bChroma ? 3 : 1); plane++)
             {
@@ -133,7 +133,7 @@
             pwp0 = refIdx0 >= 0 ? cu.m_slice->m_weightPredTable[0][refIdx0] : NULL;
             pwp1 = refIdx1 >= 0 ? cu.m_slice->m_weightPredTable[1][refIdx1] : NULL;
 
-            if (pwp0 && pwp1 && (pwp0->bPresentFlag || pwp1->bPresentFlag))
+            if (pwp0 && pwp1 && (pwp0->wtPresent || pwp1->wtPresent))
             {
                 /* biprediction weighting */
                 for (int plane = 0; plane < (bChroma ? 3 : 1); plane++)
@@ -183,7 +183,7 @@
                 predInterChromaShort(pu, m_predShortYuv[1], *cu.m_slice->m_refReconPicList[1][refIdx1], mv1);
             }
 
-            if (pwp0 && pwp1 && (pwp0->bPresentFlag || pwp1->bPresentFlag))
+            if (pwp0 && pwp1 && (pwp0->wtPresent || pwp1->wtPresent))
                 addWeightBi(pu, predYuv, m_predShortYuv[0], m_predShortYuv[1], wv0, wv1, bLuma, bChroma);
             else
                 predYuv.addAvg(m_predShortYuv[0], m_predShortYuv[1], pu.puAbsPartIdx, pu.width, pu.height, bLuma, bChroma);
@@ -193,7 +193,7 @@
             MV mv0 = cu.m_mv[0][pu.puAbsPartIdx];
             cu.clipMv(mv0);
 
-            if (pwp0 && pwp0->bPresentFlag)
+            if (pwp0 && pwp0->wtPresent)
             {
                 ShortYuv& shortYuv = m_predShortYuv[0];
 
@@ -220,7 +220,7 @@
             /* uniprediction to L1 */
             X265_CHECK(refIdx1 >= 0, "refidx1 was not positive\n");
 
-            if (pwp1 && pwp1->bPresentFlag)
+            if (pwp1 && pwp1->wtPresent)
             {
                 ShortYuv& shortYuv = m_predShortYuv[0];
 
diff -r c258d214c978 -r 85c222dbd0d9 source/common/slice.cpp
--- a/source/common/slice.cpp	Mon Jul 23 15:36:44 2018 +0530
+++ b/source/common/slice.cpp	Wed Jul 25 11:27:46 2018 +0530
@@ -138,7 +138,7 @@
             for (int yuv = 0; yuv < 3; yuv++)
             {
                 WeightParam& wp = m_weightPredTable[l][i][yuv];
-                wp.bPresentFlag = false;
+                wp.wtPresent = 0;
                 wp.log2WeightDenom = 0;
                 wp.inputWeight = 1;
                 wp.inputOffset = 0;
diff -r c258d214c978 -r 85c222dbd0d9 source/common/slice.h
--- a/source/common/slice.h	Mon Jul 23 15:36:44 2018 +0530
+++ b/source/common/slice.h	Wed Jul 25 11:27:46 2018 +0530
@@ -298,7 +298,7 @@
     uint32_t log2WeightDenom;
     int      inputWeight;
     int      inputOffset;
-    bool     bPresentFlag;
+    int      wtPresent;
 
     /* makes a non-h265 weight (i.e. fix7), into an h265 weight */
     void setFromWeightAndOffset(int w, int o, int denom, bool bNormalize)
@@ -321,7 +321,7 @@
         (w).inputWeight = (s); \
         (w).log2WeightDenom = (d); \
         (w).inputOffset = (o); \
-        (w).bPresentFlag = (b); \
+        (w).wtPresent = (b); \
     }
 
 class Slice
diff -r c258d214c978 -r 85c222dbd0d9 source/encoder/encoder.cpp
--- a/source/encoder/encoder.cpp	Mon Jul 23 15:36:44 2018 +0530
+++ b/source/encoder/encoder.cpp	Wed Jul 25 11:27:46 2018 +0530
@@ -1307,7 +1307,7 @@
             {
                 if (slice->m_sliceType == P_SLICE)
                 {
-                    if (slice->m_weightPredTable[0][0][0].bPresentFlag)
+                    if (slice->m_weightPredTable[0][0][0].wtPresent)
                         m_numLumaWPFrames++;
                 }
                 else if (slice->m_sliceType == B_SLICE)
@@ -1315,7 +1315,7 @@
                     bool bLuma = false;
                     for (int l = 0; l < 2; l++)
                     {
-                        if (slice->m_weightPredTable[l][0][0].bPresentFlag)
+                        if (slice->m_weightPredTable[l][0][0].wtPresent)
                             bLuma = true;
                     }
                     if (bLuma)
@@ -1326,10 +1326,10 @@
             {
                 if (slice->m_sliceType == P_SLICE)
                 {
-                    if (slice->m_weightPredTable[0][0][0].bPresentFlag)
+                    if (slice->m_weightPredTable[0][0][0].wtPresent)
                         m_numLumaWPFrames++;
-                    if (slice->m_weightPredTable[0][0][1].bPresentFlag ||
-                        slice->m_weightPredTable[0][0][2].bPresentFlag)
+                    if (slice->m_weightPredTable[0][0][1].wtPresent ||
+                        slice->m_weightPredTable[0][0][2].wtPresent)
                         m_numChromaWPFrames++;
                 }
                 else if (slice->m_sliceType == B_SLICE)
@@ -1337,10 +1337,10 @@
                     bool bLuma = false, bChroma = false;
                     for (int l = 0; l < 2; l++)
                     {
-                        if (slice->m_weightPredTable[l][0][0].bPresentFlag)
+                        if (slice->m_weightPredTable[l][0][0].wtPresent)
                             bLuma = true;
-                        if (slice->m_weightPredTable[l][0][1].bPresentFlag ||
-                            slice->m_weightPredTable[l][0][2].bPresentFlag)
+                        if (slice->m_weightPredTable[l][0][1].wtPresent ||
+                            slice->m_weightPredTable[l][0][2].wtPresent)
                             bChroma = true;
                     }
 
diff -r c258d214c978 -r 85c222dbd0d9 source/encoder/entropy.cpp
--- a/source/encoder/entropy.cpp	Mon Jul 23 15:36:44 2018 +0530
+++ b/source/encoder/entropy.cpp	Wed Jul 25 11:27:46 2018 +0530
@@ -1369,8 +1369,8 @@
                     }
                     bDenomCoded = true;
                 }
-                WRITE_FLAG(wp[0].bPresentFlag, "luma_weight_lX_flag");
-                totalSignalledWeightFlags += wp[0].bPresentFlag;
+                WRITE_FLAG(!!wp[0].wtPresent, "luma_weight_lX_flag");
+                totalSignalledWeightFlags += wp[0].wtPresent;
             }
 
             if (bChroma)
@@ -1378,15 +1378,15 @@
                 for (int ref = 0; ref < slice.m_numRefIdx[list]; ref++)
                 {
                     wp = slice.m_weightPredTable[list][ref];
-                    WRITE_FLAG(wp[1].bPresentFlag, "chroma_weight_lX_flag");
-                    totalSignalledWeightFlags += 2 * wp[1].bPresentFlag;
+                    WRITE_FLAG(!!wp[1].wtPresent, "chroma_weight_lX_flag");
+                    totalSignalledWeightFlags += 2 * wp[1].wtPresent;
                 }
             }
 
             for (int ref = 0; ref < slice.m_numRefIdx[list]; ref++)
             {
                 wp = slice.m_weightPredTable[list][ref];
-                if (wp[0].bPresentFlag)
+                if (wp[0].wtPresent)
                 {
                     int deltaWeight = (wp[0].inputWeight - (1 << wp[0].log2WeightDenom));
                     WRITE_SVLC(deltaWeight, "delta_luma_weight_lX");
@@ -1395,7 +1395,7 @@
 
                 if (bChroma)
                 {
-                    if (wp[1].bPresentFlag)
+                    if (wp[1].wtPresent)
                     {
                         for (int plane = 1; plane < 3; plane++)
                         {
diff -r c258d214c978 -r 85c222dbd0d9 source/encoder/frameencoder.cpp
--- a/source/encoder/frameencoder.cpp	Mon Jul 23 15:36:44 2018 +0530
+++ b/source/encoder/frameencoder.cpp	Wed Jul 25 11:27:46 2018 +0530
@@ -478,7 +478,7 @@
         for (int ref = 0; ref < slice->m_numRefIdx[l]; ref++)
         {
             WeightParam *w = NULL;
-            if ((bUseWeightP || bUseWeightB) && slice->m_weightPredTable[l][ref][0].bPresentFlag)
+            if ((bUseWeightP || bUseWeightB) && slice->m_weightPredTable[l][ref][0].wtPresent)
                 w = slice->m_weightPredTable[l][ref];
             slice->m_refReconPicList[l][ref] = slice->m_refFrameList[l][ref]->m_reconPic;
             m_mref[l][ref].init(slice->m_refReconPicList[l][ref], w, *m_param);
diff -r c258d214c978 -r 85c222dbd0d9 source/encoder/reference.cpp
--- a/source/encoder/reference.cpp	Mon Jul 23 15:36:44 2018 +0530
+++ b/source/encoder/reference.cpp	Wed Jul 25 11:27:46 2018 +0530
@@ -89,7 +89,7 @@
                 cuHeight >>= reconPic->m_vChromaShift;
             }
 
-            if (wp[c].bPresentFlag)
+            if (wp[c].wtPresent)
             {
                 if (!weightBuffer[c])
                 {
diff -r c258d214c978 -r 85c222dbd0d9 source/encoder/slicetype.cpp
--- a/source/encoder/slicetype.cpp	Mon Jul 23 15:36:44 2018 +0530
+++ b/source/encoder/slicetype.cpp	Wed Jul 25 11:27:46 2018 +0530
@@ -436,7 +436,7 @@
     pixel *src = ref.fpelPlane[0];
     intptr_t stride = fenc.lumaStride;
 
-    if (wp.bPresentFlag)
+    if (wp.wtPresent)
     {
         int offset = wp.inputOffset << (X265_DEPTH - 8);
         int scale = wp.inputWeight;
@@ -490,7 +490,7 @@
     int deltaIndex = fenc.frameNum - ref.frameNum;
 
     WeightParam wp;
-    wp.bPresentFlag = false;
+    wp.wtPresent = 0;
 
     if (!wbuffer[0])
     {
diff -r c258d214c978 -r 85c222dbd0d9 source/encoder/weightPrediction.cpp
--- a/source/encoder/weightPrediction.cpp	Mon Jul 23 15:36:44 2018 +0530
+++ b/source/encoder/weightPrediction.cpp	Wed Jul 25 11:27:46 2018 +0530
@@ -293,7 +293,7 @@
         for (int plane = 0; plane < (param.internalCsp != X265_CSP_I400 ? 3 : 1); plane++)
         {
             denom = plane ? chromaDenom : lumaDenom;
-            if (plane && !weights[0].bPresentFlag)
+            if (plane && !weights[0].wtPresent)
                 break;
 
             /* Early termination */
@@ -476,12 +476,12 @@
             }
         }
 
-        if (weights[0].bPresentFlag)
+        if (weights[0].wtPresent)
         {
             // Make sure both chroma channels match
-            if (weights[1].bPresentFlag != weights[2].bPresentFlag)
+            if (weights[1].wtPresent != weights[2].wtPresent)
             {
-                if (weights[1].bPresentFlag)
+                if (weights[1].wtPresent)
                     weights[2] = weights[1];
                 else
                     weights[1] = weights[2];
@@ -515,15 +515,15 @@
         for (int list = 0; list < numPredDir; list++)
         {
             WeightParam* w = &wp[list][0][0];
-            if (w[0].bPresentFlag || w[1].bPresentFlag || w[2].bPresentFlag)
+            if (w[0].wtPresent || w[1].wtPresent || w[2].wtPresent)
             {
                 bWeighted = true;
                 p += sprintf(buf + p, " [L%d:R0 ", list);
-                if (w[0].bPresentFlag)
+                if (w[0].wtPresent)
                     p += sprintf(buf + p, "Y{%d/%d%+d}", w[0].inputWeight, 1 << w[0].log2WeightDenom, w[0].inputOffset);
-                if (w[1].bPresentFlag)
+                if (w[1].wtPresent)
                     p += sprintf(buf + p, "U{%d/%d%+d}", w[1].inputWeight, 1 << w[1].log2WeightDenom, w[1].inputOffset);
-                if (w[2].bPresentFlag)
+                if (w[2].wtPresent)
                     p += sprintf(buf + p, "V{%d/%d%+d}", w[2].inputWeight, 1 << w[2].log2WeightDenom, w[2].inputOffset);
                 p += sprintf(buf + p, "]");
             }
diff -r c258d214c978 -r 85c222dbd0d9 source/x265.h
--- a/source/x265.h	Mon Jul 23 15:36:44 2018 +0530
+++ b/source/x265.h	Wed Jul 25 11:27:46 2018 +0530
@@ -169,7 +169,7 @@
     uint32_t log2WeightDenom;
     int      inputWeight;
     int      inputOffset;
-    bool     bPresentFlag;
+    int      wtPresent;
 }x265_weight_param;
 
 #if X265_DEPTH < 10
-------------- next part --------------
A non-text attachment was scrubbed...
Name: x265.patch
Type: text/x-patch
Size: 12080 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20180725/dc0b59ad/attachment-0001.bin>


More information about the x265-devel mailing list