# HG changeset patch
# User Min Chen <[email protected]>
# Date 1427503356 25200
# Node ID 6c739f92b1b18bf20531afea00480c86db1a9f0e
# Parent  dc7a6c5fbda13173004e6193f185ea857d7a22c8
intra: replace 64x64 scaled reference pixel copy loop by memcpy
---
 source/encoder/search.cpp |   19 ++++---------------
 1 files changed, 4 insertions(+), 15 deletions(-)

diff -r dc7a6c5fbda1 -r 6c739f92b1b1 source/encoder/search.cpp
--- a/source/encoder/search.cpp Thu Mar 26 11:24:23 2015 -0500
+++ b/source/encoder/search.cpp Fri Mar 27 17:42:36 2015 -0700
@@ -1234,13 +1234,8 @@
         primitives.scale1D_128to64(nScale + 1, intraNeighbourBuf[0] + 1, 0);
 
         // we do not estimate filtering for downscaled samples
-        for (int x = 1; x < 65; x++)
-        {
-            intraNeighbourBuf[0][x] = nScale[x];           // Top pixel
-            intraNeighbourBuf[0][x + 64] = nScale[x + 64]; // Left pixel
-            intraNeighbourBuf[1][x] = nScale[x];           // Top pixel
-            intraNeighbourBuf[1][x + 64] = nScale[x + 64]; // Left pixel
-        }
+        memcpy(&intraNeighbourBuf[0][1], &nScale[1], 2 * 64 * sizeof(pixel));  
 // Top & Left pixels
+        memcpy(&intraNeighbourBuf[1][1], &nScale[1], 2 * 64 * sizeof(pixel));
 
         scaleTuSize = 32;
         scaleStride = 32;
@@ -1467,14 +1462,8 @@
                     intraNeighbourBuf[1][0] = intraNeighbourBuf[0][0];
                     primitives.scale1D_128to64(nScale + 1, 
intraNeighbourBuf[0] + 1, 0);
 
-                    // TO DO: primitive
-                    for (int x = 1; x < 65; x++)
-                    {
-                        intraNeighbourBuf[0][x] = nScale[x];           // Top 
pixel
-                        intraNeighbourBuf[0][x + 64] = nScale[x + 64]; // Left 
pixel
-                        intraNeighbourBuf[1][x] = nScale[x];           // Top 
pixel
-                        intraNeighbourBuf[1][x + 64] = nScale[x + 64]; // Left 
pixel
-                    }
+                    memcpy(&intraNeighbourBuf[0][1], &nScale[1], 2 * 64 * 
sizeof(pixel));
+                    memcpy(&intraNeighbourBuf[1][1], &nScale[1], 2 * 64 * 
sizeof(pixel));
 
                     scaleTuSize = 32;
                     scaleStride = 32;

_______________________________________________
x265-devel mailing list
[email protected]
https://mailman.videolan.org/listinfo/x265-devel

Reply via email to