[x265-commits] [x265] vbv: bug fixes in --no-cutree flow. Ignore intracosts in ...

Aarthi at videolan.org Aarthi at videolan.org
Mon Mar 3 23:44:26 CET 2014


details:   http://hg.videolan.org/x265/rev/527d03c56d68
branches:  stable
changeset: 6355:527d03c56d68
user:      Aarthi Thirumalai
date:      Tue Mar 04 03:13:00 2014 +0530
description:
vbv: bug fixes in --no-cutree flow. Ignore intracosts in calculating satdcost per cu.
Subject: [x265] test bench : fix for test bench failure, caused by redundant malloc.

details:   http://hg.videolan.org/x265/rev/6662df480e39
branches:  
changeset: 6356:6662df480e39
user:      Nabajit Deka
date:      Mon Mar 03 11:28:22 2014 +0530
description:
test bench : fix for test bench failure, caused by redundant malloc.
Subject: [x265] asm : remove chroma_p2s_i444, can be replaced by luma_p2s

details:   http://hg.videolan.org/x265/rev/e686e589f3ca
branches:  
changeset: 6357:e686e589f3ca
user:      Nabajit Deka
date:      Mon Mar 03 17:44:56 2014 +0530
description:
asm : remove chroma_p2s_i444, can be replaced by luma_p2s
Subject: [x265] test bench : Modify chroma_p2s test function to handle csp.

details:   http://hg.videolan.org/x265/rev/eb7eb10568fb
branches:  
changeset: 6358:eb7eb10568fb
user:      Nabajit Deka
date:      Mon Mar 03 17:27:42 2014 +0530
description:
test bench : Modify chroma_p2s test function to handle csp.
Subject: [x265] residual coding unit is always square

details:   http://hg.videolan.org/x265/rev/684781cad358
branches:  
changeset: 6359:684781cad358
user:      Satoshi Nakagawa <nakagawa424 at oki.com>
date:      Mon Mar 03 11:46:33 2014 +0900
description:
residual coding unit is always square
Subject: [x265] TEncEntropy: fix gcc warnings

details:   http://hg.videolan.org/x265/rev/e34503ff6627
branches:  
changeset: 6360:e34503ff6627
user:      Steve Borho <steve at borho.org>
date:      Mon Mar 03 14:59:21 2014 -0600
description:
TEncEntropy: fix gcc warnings
Subject: [x265] tencsao: remove unused calcSaoStatsBlock

details:   http://hg.videolan.org/x265/rev/2de527d2826d
branches:  
changeset: 6361:2de527d2826d
user:      Gopu Govindaswamy
date:      Mon Mar 03 13:48:26 2014 +0530
description:
tencsao: remove unused calcSaoStatsBlock
Subject: [x265] tencsao: new and delete replaced with  X265_MALLOC and X265_FREE

details:   http://hg.videolan.org/x265/rev/02f953896795
branches:  
changeset: 6362:02f953896795
user:      Gopu Govindaswamy
date:      Mon Mar 03 14:21:25 2014 +0530
description:
tencsao: new and delete replaced with  X265_MALLOC and X265_FREE
Subject: [x265] tencsao: Pel replaced with pixel type

details:   http://hg.videolan.org/x265/rev/0a2fcf8690b8
branches:  
changeset: 6363:0a2fcf8690b8
user:      Gopu Govindaswamy
date:      Mon Mar 03 14:27:21 2014 +0530
description:
tencsao: Pel replaced with pixel type
Subject: [x265] tcomsaq: remove unused get and set saolcuboundary methods

details:   http://hg.videolan.org/x265/rev/776983eda6ba
branches:  
changeset: 6364:776983eda6ba
user:      Gopu Govindaswamy
date:      Mon Mar 03 14:43:21 2014 +0530
description:
tcomsaq: remove unused get and set saolcuboundary methods
Subject: [x265] tcomsao: use X265_MALLOC and X265_FREE in create() and Pel replaced with pixel

details:   http://hg.videolan.org/x265/rev/459b108299e0
branches:  
changeset: 6365:459b108299e0
user:      Gopu Govindaswamy
date:      Mon Mar 03 15:07:34 2014 +0530
description:
tcomsao: use X265_MALLOC and X265_FREE in create() and Pel replaced with pixel
Subject: [x265] tcomsao: replaced All Pel type into pixel type

details:   http://hg.videolan.org/x265/rev/f3125b431ee5
branches:  
changeset: 6366:f3125b431ee5
user:      Gopu Govindaswamy
date:      Mon Mar 03 15:29:22 2014 +0530
description:
tcomsao: replaced All Pel type into pixel type
Subject: [x265] tcomsao: only get method is unused, set lcuboundary is required

details:   http://hg.videolan.org/x265/rev/62fe3f905981
branches:  
changeset: 6367:62fe3f905981
user:      Gopu Govindaswamy
date:      Mon Mar 03 15:43:54 2014 +0530
description:
tcomsao: only get method is unused, set lcuboundary is required

references 742641e0f796
Subject: [x265] Merge with stable

details:   http://hg.videolan.org/x265/rev/7fbecd22a0cd
branches:  
changeset: 6368:7fbecd22a0cd
user:      Steve Borho <steve at borho.org>
date:      Mon Mar 03 16:34:48 2014 -0600
description:
Merge with stable
Subject: [x265] cmake: detect strtok_r, use workaround when not present

details:   http://hg.videolan.org/x265/rev/3cbde0b893e3
branches:  
changeset: 6369:3cbde0b893e3
user:      Steve Borho <steve at borho.org>
date:      Mon Mar 03 13:37:35 2014 -0600
description:
cmake: detect strtok_r, use workaround when not present

diffstat:

 source/CMakeLists.txt                               |    1 +
 source/Lib/TLibCommon/CommonDef.h                   |    3 +-
 source/Lib/TLibCommon/TComDataCU.cpp                |   49 +-
 source/Lib/TLibCommon/TComDataCU.h                  |    2 +-
 source/Lib/TLibCommon/TComPattern.cpp               |  276 +++---
 source/Lib/TLibCommon/TComPattern.h                 |   19 +-
 source/Lib/TLibCommon/TComPicYuv.h                  |    2 +-
 source/Lib/TLibCommon/TComPrediction.cpp            |    8 +-
 source/Lib/TLibCommon/TComPrediction.h              |   10 +-
 source/Lib/TLibCommon/TComRom.cpp                   |  106 +-
 source/Lib/TLibCommon/TComRom.h                     |    2 +-
 source/Lib/TLibCommon/TComSampleAdaptiveOffset.cpp  |  204 ++--
 source/Lib/TLibCommon/TComSampleAdaptiveOffset.h    |   32 +-
 source/Lib/TLibCommon/TComTrQuant.cpp               |  206 ++--
 source/Lib/TLibCommon/TComTrQuant.h                 |   20 +-
 source/Lib/TLibCommon/TComWeightPrediction.cpp      |    8 +-
 source/Lib/TLibCommon/TComWeightPrediction.h        |    8 +-
 source/Lib/TLibCommon/TComYuv.cpp                   |  151 +-
 source/Lib/TLibCommon/TComYuv.h                     |   47 +-
 source/Lib/TLibCommon/TypeDef.h                     |   18 +-
 source/Lib/TLibEncoder/TEncCu.cpp                   |   67 +-
 source/Lib/TLibEncoder/TEncCu.h                     |   10 +-
 source/Lib/TLibEncoder/TEncEntropy.cpp              |   26 +-
 source/Lib/TLibEncoder/TEncEntropy.h                |    6 +-
 source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp |  366 +-------
 source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h   |    1 -
 source/Lib/TLibEncoder/TEncSbac.cpp                 |  119 +-
 source/Lib/TLibEncoder/TEncSbac.h                   |   10 +-
 source/Lib/TLibEncoder/TEncSearch.cpp               |  136 +-
 source/Lib/TLibEncoder/TEncSearch.h                 |   32 +-
 source/common/CMakeLists.txt                        |   14 +-
 source/common/TShortYUV.cpp                         |  320 -------
 source/common/TShortYUV.h                           |  120 --
 source/common/bitstream.h                           |   70 +
 source/common/common.h                              |    3 -
 source/common/loopfilter.cpp                        |   52 +
 source/common/param.cpp                             |  141 ++-
 source/common/param.h                               |    2 +
 source/common/primitives.cpp                        |   40 +-
 source/common/primitives.h                          |    5 +-
 source/common/shortyuv.cpp                          |  282 ++++++
 source/common/shortyuv.h                            |  112 ++
 source/common/x86/asm-primitives.cpp                |   73 +-
 source/common/x86/intrapred8.asm                    |  862 ++++++++-----------
 source/common/x86/ipfilter16.asm                    |  513 +++++++++++
 source/common/x86/ipfilter8.asm                     |   58 -
 source/common/x86/ipfilter8.h                       |    2 +-
 source/common/x86/loopfilter.asm                    |   85 +
 source/common/x86/loopfilter.h                      |   29 +
 source/encoder/compress.cpp                         |   14 +-
 source/encoder/cturow.cpp                           |   15 +-
 source/encoder/cturow.h                             |    2 +-
 source/encoder/encoder.cpp                          |   16 +-
 source/encoder/frameencoder.cpp                     |   15 +-
 source/encoder/frameencoder.h                       |    2 +-
 source/encoder/framefilter.cpp                      |    4 -
 source/encoder/slicetype.cpp                        |    4 +-
 source/encoder/slicetype.h                          |    1 +
 source/encoder/weightPrediction.cpp                 |  566 +++++++-----
 source/test/intrapredharness.cpp                    |   36 +-
 source/test/ipfilterharness.cpp                     |   53 +-
 source/test/ipfilterharness.h                       |    2 +-
 source/test/mbdstharness.cpp                        |   57 +-
 source/test/pixelharness.cpp                        |  102 +-
 source/test/pixelharness.h                          |    3 +-
 source/test/testbench.cpp                           |   47 +-
 source/x265.cpp                                     |   27 +-
 source/x265.h                                       |    4 +-
 68 files changed, 3077 insertions(+), 2621 deletions(-)

diffs (truncated from 9600 to 300 lines):

diff -r f6d079ad85bc -r 3cbde0b893e3 source/CMakeLists.txt
--- a/source/CMakeLists.txt	Fri Feb 28 13:00:01 2014 -0800
+++ b/source/CMakeLists.txt	Mon Mar 03 13:37:35 2014 -0600
@@ -14,6 +14,7 @@ project (x265)
 cmake_minimum_required (VERSION 2.8.8) # OBJECT libraries require 2.8.8
 include(CheckIncludeFiles)
 include(CheckFunctionExists)
+include(CheckSymbolExists)
 include(CheckCXXCompilerFlag)
 
 # X265_BUILD must be incremented each time the public API is changed
diff -r f6d079ad85bc -r 3cbde0b893e3 source/Lib/TLibCommon/CommonDef.h
--- a/source/Lib/TLibCommon/CommonDef.h	Fri Feb 28 13:00:01 2014 -0800
+++ b/source/Lib/TLibCommon/CommonDef.h	Mon Mar 03 13:37:35 2014 -0600
@@ -88,8 +88,7 @@
 
 #define MLS_GRP_NUM                 64 ///< G644 : Max number of coefficient groups, max(16, 64)
 #define MLS_CG_SIZE                 4 ///< G644 : Coefficient group size of 4x4
-#define MLS_CG_LOG2_WIDTH           2
-#define MLS_CG_LOG2_HEIGHT          2
+#define MLS_CG_LOG2_SIZE            2
 
 #define ARL_C_PRECISION             7 ///< G382: 7-bit arithmetic precision
 #define LEVEL_RANGE                 30 ///< G382: max coefficient level in statistics collection
diff -r f6d079ad85bc -r 3cbde0b893e3 source/Lib/TLibCommon/TComDataCU.cpp
--- a/source/Lib/TLibCommon/TComDataCU.cpp	Fri Feb 28 13:00:01 2014 -0800
+++ b/source/Lib/TLibCommon/TComDataCU.cpp	Mon Mar 03 13:37:35 2014 -0600
@@ -2833,7 +2833,7 @@ void TComDataCU::xDeriveCenterIdx(uint32
                                        + (partWidth / m_pic->getMinCUWidth()) / 2];
 }
 
-uint32_t TComDataCU::getCoefScanIdx(uint32_t absPartIdx, uint32_t width, uint32_t height, bool bIsLuma, bool bIsIntra)
+uint32_t TComDataCU::getCoefScanIdx(uint32_t absPartIdx, uint32_t log2TrSize, bool bIsLuma, bool bIsIntra)
 {
     uint32_t scanIdx;
     uint32_t dirMode;
@@ -2846,57 +2846,28 @@ uint32_t TComDataCU::getCoefScanIdx(uint
 
     if (bIsLuma)
     {
-        const uint32_t maximumWidth  = MDCS_MAXIMUM_WIDTH;
-        const uint32_t maximumHeight = MDCS_MAXIMUM_HEIGHT;
-
-        if ((width > maximumWidth) || (height > maximumHeight)) return SCAN_DIAG;
+        if (log2TrSize > MDCS_LOG2_MAX_SIZE) return SCAN_DIAG;
 
         dirMode = getLumaIntraDir(absPartIdx);
     }
     else
     {
-        const uint32_t maximumWidth  = MDCS_MAXIMUM_WIDTH  >> m_hChromaShift;
-        const uint32_t maximumHeight = MDCS_MAXIMUM_HEIGHT >> m_vChromaShift;
-
-        if ((width > maximumWidth) || (height > maximumHeight)) return SCAN_DIAG;
+        if (log2TrSize > (MDCS_LOG2_MAX_SIZE - m_hChromaShift)) return SCAN_DIAG;
 
         dirMode  = getChromaIntraDir(absPartIdx);
         if (dirMode == DM_CHROMA_IDX)
         {
             dirMode = getLumaIntraDir(absPartIdx);
         }
+        // TODO: 4:2:2
     }
 
-    switch (MDCS_MODE)
-    {
-    case MDCS_BOTH_DIRECTIONS:
-        if (abs((int)dirMode - VER_IDX) <= MDCS_ANGLE_LIMIT)
-            scanIdx = SCAN_HOR;
-        else if (abs((int)dirMode - HOR_IDX) <= MDCS_ANGLE_LIMIT)
-            scanIdx = SCAN_VER;
-        else
-            scanIdx = SCAN_DIAG;
-        break;
-
-    case MDCS_VERTICAL_ONLY:
-        if (abs((int)dirMode - HOR_IDX) <= MDCS_ANGLE_LIMIT)
-            scanIdx = SCAN_VER;
-        break;
-
-    case MDCS_HORIZONTAL_ONLY:
-        if (abs((int)dirMode - VER_IDX) <= MDCS_ANGLE_LIMIT)
-            scanIdx = SCAN_HOR;
-        break;
-
-    case MDCS_DISABLED:
-        scanIdx = 0;
-        break;
-
-    default:
-        assert(false);
-        x265_log(NULL, X265_LOG_ERROR, "Unrecognised MDCS mode\n");
-        break;
-    }
+    if (abs((int)dirMode - VER_IDX) <= MDCS_ANGLE_LIMIT)
+        scanIdx = SCAN_HOR;
+    else if (abs((int)dirMode - HOR_IDX) <= MDCS_ANGLE_LIMIT)
+        scanIdx = SCAN_VER;
+    else
+        scanIdx = SCAN_DIAG;
 
     return scanIdx;
 }
diff -r f6d079ad85bc -r 3cbde0b893e3 source/Lib/TLibCommon/TComDataCU.h
--- a/source/Lib/TLibCommon/TComDataCU.h	Fri Feb 28 13:00:01 2014 -0800
+++ b/source/Lib/TLibCommon/TComDataCU.h	Mon Mar 03 13:37:35 2014 -0600
@@ -472,7 +472,7 @@ public:
 
     uint32_t&     getTotalNumPart()               { return m_numPartitions; }
 
-    uint32_t      getCoefScanIdx(uint32_t absPartIdx, uint32_t width, uint32_t height, bool bIsLuma, bool bIsIntra);
+    uint32_t      getCoefScanIdx(uint32_t absPartIdx, uint32_t log2TrSize, bool bIsLuma, bool bIsIntra);
 
     // -------------------------------------------------------------------------------------------------------------------
     // member functions to support multiple color space formats
diff -r f6d079ad85bc -r 3cbde0b893e3 source/Lib/TLibCommon/TComPattern.cpp
--- a/source/Lib/TLibCommon/TComPattern.cpp	Fri Feb 28 13:00:01 2014 -0800
+++ b/source/Lib/TLibCommon/TComPattern.cpp	Mon Mar 03 13:37:35 2014 -0600
@@ -48,11 +48,11 @@ using namespace x265;
 // Public member functions (TComPattern)
 // ====================================================================================================================
 
-void TComPattern::initAdiPattern(TComDataCU* cu, uint32_t zOrderIdxInPart, uint32_t partDepth, Pel* adiBuf,
+void TComPattern::initAdiPattern(TComDataCU* cu, uint32_t zOrderIdxInPart, uint32_t partDepth, pixel* adiBuf,
                                  int strideOrig, int heightOrig)
 {
-    Pel* roiOrigin;
-    Pel* adiTemp;
+    pixel* roiOrigin;
+    pixel* adiTemp;
     uint32_t cuWidth = cu->getWidth(0) >> partDepth;
     uint32_t cuHeight = cu->getHeight(0) >> partDepth;
     uint32_t cuWidth2  = cuWidth << 1;
@@ -100,10 +100,10 @@ void TComPattern::initAdiPattern(TComDat
     int bufSize = cuHeight2 + cuWidth2 + 1;
     uint32_t wh = ADI_BUF_STRIDE * height;         // number of elements in one buffer
 
-    Pel* filteredBuf1 = adiBuf + wh;         // 1. filter buffer
-    Pel* filteredBuf2 = filteredBuf1 + wh; // 2. filter buffer
-    Pel* filterBuf = filteredBuf2 + wh;    // buffer for 2. filtering (sequential)
-    Pel* filterBufN = filterBuf + bufSize; // buffer for 1. filtering (sequential)
+    pixel* filteredBuf1 = adiBuf + wh;         // 1. filter buffer
+    pixel* filteredBuf2 = filteredBuf1 + wh; // 2. filter buffer
+    pixel* filterBuf = filteredBuf2 + wh;    // buffer for 2. filtering (sequential)
+    pixel* filterBufN = filterBuf + bufSize; // buffer for 1. filtering (sequential)
 
     int l = 0;
     // left border from bottom to top
@@ -179,8 +179,8 @@ void TComPattern::initAdiPattern(TComDat
 }
 
 // Overloaded initialization of ADI buffers to support buffered references for xpredIntraAngBufRef
-void TComPattern::initAdiPattern(TComDataCU* cu, uint32_t zOrderIdxInPart, uint32_t partDepth, Pel* adiBuf, int strideOrig, int heightOrig,
-                                 Pel* refAbove, Pel* refLeft, Pel* refAboveFlt, Pel* refLeftFlt)
+void TComPattern::initAdiPattern(TComDataCU* cu, uint32_t zOrderIdxInPart, uint32_t partDepth, pixel* adiBuf, int strideOrig, int heightOrig,
+                                 pixel* refAbove, pixel* refLeft, pixel* refAboveFlt, pixel* refLeftFlt)
 {
     initAdiPattern(cu, zOrderIdxInPart, partDepth, adiBuf, strideOrig, heightOrig);
     uint32_t cuWidth   = cu->getWidth(0) >> partDepth;
@@ -194,8 +194,8 @@ void TComPattern::initAdiPattern(TComDat
     refLeftFlt += cuWidth - 1;
 
     //  ADI_BUF_STRIDE * (2 * height + 1);
-    memcpy(refAbove, adiBuf, (cuWidth2 + 1) * sizeof(Pel));
-    memcpy(refAboveFlt, adiBuf + ADI_BUF_STRIDE * (2 * cuHeight + 1), (cuWidth2 + 1) * sizeof(Pel));
+    memcpy(refAbove, adiBuf, (cuWidth2 + 1) * sizeof(pixel));
+    memcpy(refAboveFlt, adiBuf + ADI_BUF_STRIDE * (2 * cuHeight + 1), (cuWidth2 + 1) * sizeof(pixel));
 
     for (int k = 0; k < cuHeight2 + 1; k++)
     {
@@ -204,10 +204,10 @@ void TComPattern::initAdiPattern(TComDat
     }
 }
 
-void TComPattern::initAdiPatternChroma(TComDataCU* cu, uint32_t zOrderIdxInPart, uint32_t partDepth, Pel* adiBuf, int strideOrig, int heightOrig, int chromaId)
+void TComPattern::initAdiPatternChroma(TComDataCU* cu, uint32_t zOrderIdxInPart, uint32_t partDepth, pixel* adiBuf, int strideOrig, int heightOrig, int chromaId)
 {
-    Pel*  roiOrigin;
-    Pel*  adiTemp;
+    pixel*  roiOrigin;
+    pixel*  adiTemp;
     uint32_t  cuWidth  = cu->getWidth(0) >> partDepth;
     uint32_t  cuHeight = cu->getHeight(0) >> partDepth;
     uint32_t  width;
@@ -252,163 +252,163 @@ void TComPattern::initAdiPatternChroma(T
                          cuWidth, cuHeight, width, height, picStride);
 }
 
-void TComPattern::fillReferenceSamples(Pel* roiOrigin, Pel* adiTemp, bool* bNeighborFlags, int numIntraNeighbor, int unitSize, int numUnitsInCU, int totalUnits, uint32_t cuWidth, uint32_t cuHeight, uint32_t width, uint32_t height, int picStride)
+void TComPattern::fillReferenceSamples(pixel* roiOrigin, pixel* adiTemp, bool* bNeighborFlags, int numIntraNeighbor, int unitSize, int numUnitsInCU, int totalUnits, uint32_t cuWidth, uint32_t cuHeight, uint32_t width, uint32_t height, int picStride)
 {
-    Pel* piRoiTemp;
-    int  i, j;
-    int  iDCValue = 1 << (X265_DEPTH - 1);
+    pixel* roiTemp;
+    int i, j;
+    int dcValue = 1 << (X265_DEPTH - 1);
 
     if (numIntraNeighbor == 0)
     {
         // Fill border with DC value
         for (i = 0; i < width; i++)
         {
-            adiTemp[i] = iDCValue;
+            adiTemp[i] = dcValue;
         }
 
         for (i = 1; i < height; i++)
         {
-            adiTemp[i * ADI_BUF_STRIDE] = iDCValue;
+            adiTemp[i * ADI_BUF_STRIDE] = dcValue;
         }
     }
     else if (numIntraNeighbor == totalUnits)
     {
         // Fill top-left border with rec. samples
-        piRoiTemp = roiOrigin - picStride - 1;
-        adiTemp[0] = piRoiTemp[0];
+        roiTemp = roiOrigin - picStride - 1;
+        adiTemp[0] = roiTemp[0];
 
         // Fill left border with rec. samples
         // Fill below left border with rec. samples
-        piRoiTemp = roiOrigin - 1;
+        roiTemp = roiOrigin - 1;
 
         for (i = 0; i < 2 * cuHeight; i++)
         {
-            adiTemp[(1 + i) * ADI_BUF_STRIDE] = piRoiTemp[0];
-            piRoiTemp += picStride;
+            adiTemp[(1 + i) * ADI_BUF_STRIDE] = roiTemp[0];
+            roiTemp += picStride;
         }
 
         // Fill top border with rec. samples
         // Fill top right border with rec. samples
-        piRoiTemp = roiOrigin - picStride;
-        memcpy(&adiTemp[1], piRoiTemp, 2 * cuWidth * sizeof(*adiTemp));
+        roiTemp = roiOrigin - picStride;
+        memcpy(&adiTemp[1], roiTemp, 2 * cuWidth * sizeof(*adiTemp));
     }
     else // reference samples are partially available
     {
-        int  iNumUnits2 = numUnitsInCU << 1;
-        int  iTotalSamples = totalUnits * unitSize;
-        Pel  piAdiLine[5 * MAX_CU_SIZE];
-        Pel  *piAdiLineTemp;
-        bool *pbNeighborFlags;
-        int  iNext, iCurr;
-        Pel  piRef = 0;
+        int    numUnits2 = numUnitsInCU << 1;
+        int    totalSamples = totalUnits * unitSize;
+        pixel  adiLine[5 * MAX_CU_SIZE];
+        pixel* adiLineTemp;
+        bool*  neighborFlagPtr;
+        int    next, curr;
+        pixel  iRef = 0;
 
         // Initialize
-        for (i = 0; i < iTotalSamples; i++)
+        for (i = 0; i < totalSamples; i++)
         {
-            piAdiLine[i] = iDCValue;
+            adiLine[i] = dcValue;
         }
 
         // Fill top-left sample
-        piRoiTemp = roiOrigin - picStride - 1;
-        piAdiLineTemp = piAdiLine + (iNumUnits2 * unitSize);
-        pbNeighborFlags = bNeighborFlags + iNumUnits2;
-        if (*pbNeighborFlags)
+        roiTemp = roiOrigin - picStride - 1;
+        adiLineTemp = adiLine + (numUnits2 * unitSize);
+        neighborFlagPtr = bNeighborFlags + numUnits2;
+        if (*neighborFlagPtr)
         {
-            piAdiLineTemp[0] = piRoiTemp[0];
+            adiLineTemp[0] = roiTemp[0];
             for (i = 1; i < unitSize; i++)
             {
-                piAdiLineTemp[i] = piAdiLineTemp[0];
+                adiLineTemp[i] = adiLineTemp[0];
             }
         }
 
         // Fill left & below-left samples
-        piRoiTemp += picStride;
-        piAdiLineTemp--;
-        pbNeighborFlags--;
-        for (j = 0; j < iNumUnits2; j++)
+        roiTemp += picStride;
+        adiLineTemp--;
+        neighborFlagPtr--;
+        for (j = 0; j < numUnits2; j++)
         {
-            if (*pbNeighborFlags)
+            if (*neighborFlagPtr)
             {
                 for (i = 0; i < unitSize; i++)
                 {


More information about the x265-commits mailing list