[FFmpeg-devel] [PATCH 2/5] lavfi/gradfun: fix rounding in MMX code.
Clément Bœsch
ubitux at gmail.com
Fri Dec 7 00:46:06 CET 2012
Current code divide before increasing precision.
---
libavfilter/x86/gradfun.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavfilter/x86/gradfun.c b/libavfilter/x86/gradfun.c
index 5e71aab..1ca5928 100644
--- a/libavfilter/x86/gradfun.c
+++ b/libavfilter/x86/gradfun.c
@@ -62,8 +62,8 @@ static void gradfun_filter_line_mmxext(uint8_t *dst, const uint8_t *src, const u
"pminsw %%mm7, %%mm2 \n" // m = -max(0, 127-m)
"pmullw %%mm2, %%mm2 \n"
"paddw %%mm4, %%mm0 \n" // pix += dither
- "pmulhw %%mm2, %%mm1 \n"
"psllw $2, %%mm1 \n" // m = m*m*delta >> 14
+ "pmulhw %%mm2, %%mm1 \n"
"paddw %%mm1, %%mm0 \n" // pix += m
"psraw $7, %%mm0 \n"
"packuswb %%mm0, %%mm0 \n"
--
1.8.0.1
More information about the ffmpeg-devel
mailing list