X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavfilter%2Faf_replaygain.c;h=53fe49d76976880ce035dc93ee7abdb28f69e6ad;hb=7b6012efaae549b8e624876dba9550cb003f98b1;hp=97617346edfed8855d63200791f849c3acfe50ad;hpb=ace96d2e693d804a0ed16aebc1b1027cfff2c527;p=ffmpeg diff --git a/libavfilter/af_replaygain.c b/libavfilter/af_replaygain.c index 97617346edf..53fe49d7697 100644 --- a/libavfilter/af_replaygain.c +++ b/libavfilter/af_replaygain.c @@ -551,7 +551,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in) AVFilterContext *ctx = inlink->dst; AVFilterLink *outlink = ctx->outputs[0]; ReplayGainContext *s = ctx->priv; - uint32_t level; + int64_t level; AVFrame *out; out = ff_get_audio_buffer(outlink, in->nb_samples); @@ -567,9 +567,9 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in) out->nb_samples); butter_filter_stereo_samples(s, (float *)out->data[0], out->nb_samples); - level = (uint32_t)floor(100 * calc_stereo_rms((float *)out->data[0], - out->nb_samples)); - level = av_clip(level, 0, HISTOGRAM_SLOTS - 1); + level = lrint(floor(100 * calc_stereo_rms((float *)out->data[0], + out->nb_samples))); + level = av_clip64(level, 0, HISTOGRAM_SLOTS - 1); s->histogram[level]++;