[FFmpeg-cvslog] h264: Fix 10-bit H.264 x86 chroma v loopfilter asm.

Oskar Arvidsson git at videolan.org
Sat Jun 11 04:16:58 CEST 2011


ffmpeg | branch: master | Oskar Arvidsson <oskar at irock.se> | Fri Jun 10 02:40:10 2011 +0200| [6c031a3338d49dd61cf34fd703631f5a47205912] | committer: Ronald S. Bultje

h264: Fix 10-bit H.264 x86 chroma v loopfilter asm.

The tc variable was not splatted correctly.

Signed-off-by: Ronald S. Bultje <rsbultje at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=6c031a3338d49dd61cf34fd703631f5a47205912
---

 libavcodec/x86/h264_deblock_10bit.asm |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/libavcodec/x86/h264_deblock_10bit.asm b/libavcodec/x86/h264_deblock_10bit.asm
index f5a13f1..baac725 100644
--- a/libavcodec/x86/h264_deblock_10bit.asm
+++ b/libavcodec/x86/h264_deblock_10bit.asm
@@ -836,6 +836,13 @@ DEBLOCK_LUMA_INTRA avx
     mova [r0+2*r1], m2
 %endmacro
 
+%macro CHROMA_V_LOAD_TC 2
+    movd        %1, [%2]
+    punpcklbw   %1, %1
+    punpcklwd   %1, %1
+    psraw       %1, 6
+%endmacro
+
 %macro DEBLOCK_CHROMA 1
 ;-----------------------------------------------------------------------------
 ; void deblock_v_chroma( uint16_t *pix, int stride, int alpha, int beta, int8_t *tc0 )
@@ -854,7 +861,7 @@ cglobal deblock_v_chroma_10_%1, 5,7-(mmsize/16),8*(mmsize/16)
     LOAD_AB     m4, m5, r2, r3
     LOAD_MASK   m0, m1, m2, m3, m4, m5, m7, m6, m4
     pxor        m4, m4
-    LOAD_TC     m6, r4
+    CHROMA_V_LOAD_TC m6, r4
     psubw       m6, [pw_3]
     pmaxsw      m6, m4
     pand        m7, m6



More information about the ffmpeg-cvslog mailing list