[FFmpeg-devel] [PATCH] swr/resample: use av_clip functions
James Almer
jamrial at gmail.com
Sun Apr 5 20:40:26 CEST 2015
On 05/04/15 3:26 PM, James Almer wrote:
> Signed-off-by: James Almer <jamrial at gmail.com>
> ---
> libswresample/resample_template.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/libswresample/resample_template.c b/libswresample/resample_template.c
> index 7e80ef9..d71efd6 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)
Unlike the s16 template, this code is not being tested by fate-swr for some reason. You can change this
line to "(d) = 0" and fate will still pass.
>
> #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
>
>
More information about the ffmpeg-devel
mailing list