diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-12-21 01:45:55 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-12-21 01:48:19 +0100 |
commit | 6706a2986c48e3f20f1274b24345e6555d8f0f48 (patch) | |
tree | 48d7211dfbcb8bc6a107423d2703215909659474 | |
parent | f622ff16cde3b4a66dfacb3db0d89528fbd16999 (diff) | |
download | ffmpeg-streaming-6706a2986c48e3f20f1274b24345e6555d8f0f48.zip ffmpeg-streaming-6706a2986c48e3f20f1274b24345e6555d8f0f48.tar.gz |
avfilter/vf_spp: Fix overflow in 8bit store slice
Fixes regression with
ffplay -f lavfi -i testsrc=640x480 -vf format=gray,boxblur=20:10,geq="'mod(lum(X,Y),16)*15'",boxblur=10,geq="'abs(mod(lum(X,Y),15)-7)*32'",spp=4:40
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavfilter/vf_spp.c | 2 | ||||
-rw-r--r-- | libavfilter/vf_spp.h | 2 | ||||
-rw-r--r-- | libavfilter/x86/vf_spp.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/libavfilter/vf_spp.c b/libavfilter/vf_spp.c index 4c7158e..bdc76ae 100644 --- a/libavfilter/vf_spp.c +++ b/libavfilter/vf_spp.c @@ -156,7 +156,7 @@ static void softthresh_c(int16_t dst[64], const int16_t src[64], } } -static void store_slice_c(uint8_t *dst, const uint16_t *src, +static void store_slice_c(uint8_t *dst, const int16_t *src, int dst_linesize, int src_linesize, int width, int height, int log2_scale, const uint8_t dither[8][8]) diff --git a/libavfilter/vf_spp.h b/libavfilter/vf_spp.h index 14e1ddb..6b70a91 100644 --- a/libavfilter/vf_spp.h +++ b/libavfilter/vf_spp.h @@ -45,7 +45,7 @@ typedef struct { int use_bframe_qp; int hsub, vsub; - void (*store_slice)(uint8_t *dst, const uint16_t *src, + void (*store_slice)(uint8_t *dst, const int16_t *src, int dst_stride, int src_stride, int width, int height, int log2_scale, const uint8_t dither[8][8]); diff --git a/libavfilter/x86/vf_spp.c b/libavfilter/x86/vf_spp.c index 016f526..1cfb9e8 100644 --- a/libavfilter/x86/vf_spp.c +++ b/libavfilter/x86/vf_spp.c @@ -174,7 +174,7 @@ static void softthresh_mmx(int16_t dst[64], const int16_t src[64], dst[0] = (src[0] + 4) >> 3; } -static void store_slice_mmx(uint8_t *dst, const uint16_t *src, +static void store_slice_mmx(uint8_t *dst, const int16_t *src, int dst_stride, int src_stride, int width, int height, int log2_scale, const uint8_t dither[8][8]) |