From: Niklas Haas <g...@haasn.dev> After 3b26b782ee, `ebur128->true_peak` was only set to the maximum of the current "true peak per frame" values, when it should report the true peak for the entire stream.
Fixes: 3b26b782eeded9b9ab7fac013cd1a83a30d68206 --- libavfilter/f_ebur128.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavfilter/f_ebur128.c b/libavfilter/f_ebur128.c index 80cbe20330..63669b71de 100644 --- a/libavfilter/f_ebur128.c +++ b/libavfilter/f_ebur128.c @@ -692,11 +692,13 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *insamples) double peak = dsp->find_peak(ebur128->true_peaks_per_frame, nb_channels, swr_samples, ret); - ebur128->true_peak = DBFS(peak); for (int ch = 0; ch < nb_channels; ch++) { + peak = FFMAX(peak, ebur128->true_peaks[ch]); ebur128->true_peaks[ch] = FFMAX(ebur128->true_peaks[ch], ebur128->true_peaks_per_frame[ch]); } + + ebur128->true_peak = DBFS(peak); } #endif -- 2.49.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".