diff --git a/libavfilter/af_astats.c b/libavfilter/af_astats.c index f385d2e854..b3b8f2818c 100644 --- a/libavfilter/af_astats.c +++ b/libavfilter/af_astats.c @@ -163,9 +163,9 @@ static inline void update_stat(AudioStatsContext *s, ChannelStats *p, double d) p->sigma_x += d; p->sigma_x2 += d * d; p->avg_sigma_x2 = p->avg_sigma_x2 * s->mult + (1.0 - s->mult) * d * d; - p->min_diff = FFMIN(p->min_diff == -1 ? DBL_MAX : p->min_diff, FFABS(d - (p->min_diff == -1 ? DBL_MAX : p->last))); - p->max_diff = FFMAX(p->max_diff, FFABS(d - (p->max_diff == -1 ? d : p->last))); - p->diff1_sum += FFABS(d - p->last); + p->min_diff = FFMIN(p->min_diff == -1 ? DBL_MAX : p->min_diff, fabs(d - (p->min_diff == -1 ? DBL_MAX : p->last))); + p->max_diff = FFMAX(p->max_diff, fabs(d - (p->max_diff == -1 ? d : p->last))); + p->diff1_sum += fabs(d - p->last); p->last = d; p->mask |= llrint(d * (UINT64_C(1) << 63));