diff --git a/libavfilter/af_astats.c b/libavfilter/af_astats.c index 27036385cd..ebaae29f44 100644 --- a/libavfilter/af_astats.c +++ b/libavfilter/af_astats.c @@ -329,7 +329,7 @@ static inline void update_stat(AudioStatsContext *s, ChannelStats *p, double d, drop = p->win_samples[p->win_pos]; p->win_samples[p->win_pos] = nd; - index = av_clip(FFABS(nd) * HISTOGRAM_MAX, 0, HISTOGRAM_MAX); + index = av_clip(FFABS(av_clipd(nd, -1.0, 1.0)) * HISTOGRAM_MAX, 0, HISTOGRAM_MAX); p->max_index = FFMAX(p->max_index, index); p->histogram[index]++; if (!isnan(p->noise_floor))