diff --git a/libswresample/resample_template.c b/libswresample/resample_template.c index 7e80ef995a..d71efd63c0 100644 --- a/libswresample/resample_template.c +++ b/libswresample/resample_template.c @@ -53,7 +53,7 @@ # define FELEM_MAX INT32_MAX # define FELEM_MIN INT32_MIN # define OUT(d, v) (v) = ((v) + (1<<(FILTER_SHIFT-1)))>>FILTER_SHIFT;\ - (d) = (uint64_t)((v) + 0x80000000) > 0xFFFFFFFF ? ((v)>>63) ^ 0x7FFFFFFF : (v) + (d) = av_clipl_int32(v) #elif defined(TEMPLATE_RESAMPLE_S16) @@ -66,7 +66,7 @@ # define FELEM_MAX INT16_MAX # define FELEM_MIN INT16_MIN # define OUT(d, v) (v) = ((v) + (1<<(FILTER_SHIFT-1)))>>FILTER_SHIFT;\ - (d) = (unsigned)((v) + 32768) > 65535 ? ((v)>>31) ^ 32767 : (v) + (d) = av_clip_int16(v) #endif