diff --git a/libavfilter/vf_eq.c b/libavfilter/vf_eq.c index 0c2f0cef4e..7bbbaee2c5 100644 --- a/libavfilter/vf_eq.c +++ b/libavfilter/vf_eq.c @@ -91,7 +91,7 @@ static void process_c(EQParameters *param, uint8_t *dst, int dst_stride, for (x = 0; x < w; x++) { pel = ((src[y * src_stride + x] * contrast) >> 12) + brightness; - if (pel & 768) + if (pel & ~255) pel = (-pel) >> 31; dst[y * dst_stride + x] = pel; diff --git a/libavfilter/x86/vf_eq.c b/libavfilter/x86/vf_eq.c index cfcc18f495..2e42cdf5ba 100644 --- a/libavfilter/x86/vf_eq.c +++ b/libavfilter/x86/vf_eq.c @@ -72,7 +72,7 @@ static void process_MMX(EQParameters *param, uint8_t *dst, int dst_stride, for (i = w&7; i; i--) { pel = ((*src++ * contrast) >> 12) + brightness; - if (pel & 768) + if (pel & ~255) pel = (-pel) >> 31; *dst++ = pel; }