[FFmpeg-cvslog] h264_weight: Fix SSSE3 biweight code with weights of 128

Michael Niedermayer git at videolan.org
Fri Jun 12 21:55:14 CEST 2015


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Fri Jun 12 12:58:42 2015 +0100| [5e87080f2c73186066df0b9c43877b4af0beef3a] | committer: Vittorio Giovara

h264_weight: Fix SSSE3 biweight code with weights of 128

CC: libav-stable at libav.org
Sample-Id: test_bref.mp4

Signed-off-by: Vittorio Giovara <vittorio.giovara at gmail.com>

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

 libavcodec/x86/h264_weight.asm |   10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/libavcodec/x86/h264_weight.asm b/libavcodec/x86/h264_weight.asm
index d1873af..9ad26de 100644
--- a/libavcodec/x86/h264_weight.asm
+++ b/libavcodec/x86/h264_weight.asm
@@ -135,6 +135,16 @@ WEIGHT_FUNC_HALF_MM 8, 8
     add  off_regd, 1
     or   off_regd, 1
     add        r4, 1
+    cmp        r6d, 128
+    je .nonnormal
+    cmp        r5, 128
+    jne .normal
+.nonnormal
+    sar        r5, 1
+    sar        r6, 1
+    sar  off_regd, 1
+    sub        r4, 1
+.normal
 %if cpuflag(ssse3)
     movd       m4, r5d
     movd       m0, r6d



More information about the ffmpeg-cvslog mailing list