[FFmpeg-devel] [PATCH 04/10] avfilter/af_compand: use hypot()
Ganesh Ajjanagadde
gajjanagadde at gmail.com
Sun Nov 29 18:23:17 CET 2015
2015-11-22 12:05 GMT-05:00 Ganesh Ajjanagadde <gajjanagadde at gmail.com>:
> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde at gmail.com>
> ---
> libavfilter/af_compand.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/libavfilter/af_compand.c b/libavfilter/af_compand.c
> index 3848d67..a64778e 100644
> --- a/libavfilter/af_compand.c
> +++ b/libavfilter/af_compand.c
> @@ -467,13 +467,13 @@ static int config_output(AVFilterLink *outlink)
> L(2).b = (L(0).y - L(2).y) / (L(0).x - L(2).x);
>
> theta = atan2(L(2).y - L(4).y, L(2).x - L(4).x);
> - len = sqrt(pow(L(2).x - L(4).x, 2.) + pow(L(2).y - L(4).y, 2.));
> + len = hypot(L(2).x - L(4).x, L(2).y - L(4).y);
> r = FFMIN(radius, len);
> L(3).x = L(2).x - r * cos(theta);
> L(3).y = L(2).y - r * sin(theta);
>
> theta = atan2(L(0).y - L(2).y, L(0).x - L(2).x);
> - len = sqrt(pow(L(0).x - L(2).x, 2.) + pow(L(0).y - L(2).y, 2.));
> + len = hypot(L(0).x - L(2).x, L(0).y - L(2).y);
> r = FFMIN(radius, len / 2);
> x = L(2).x + r * cos(theta);
> y = L(2).y + r * sin(theta);
> --
> 2.6.2
>
ping, this one is more important than the other hypot stuff, simply
because pow(x, 2.0) is wasteful.
More information about the ffmpeg-devel
mailing list