[FFmpeg-cvslog] avfilter/avf_showspectrum: fix hz scale with legend enabled

Paul B Mahol git at videolan.org
Sat Jul 24 18:02:07 EEST 2021


ffmpeg | branch: master | Paul B Mahol <onemda at gmail.com> | Sat Jul 24 16:56:51 2021 +0200| [e5c860cd29f2ab9f8f47f876288934af108b9d15] | committer: Paul B Mahol

avfilter/avf_showspectrum: fix hz scale with legend enabled

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e5c860cd29f2ab9f8f47f876288934af108b9d15
---

 libavfilter/avf_showspectrum.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavfilter/avf_showspectrum.c b/libavfilter/avf_showspectrum.c
index cec5915f90..f9ff5b567d 100644
--- a/libavfilter/avf_showspectrum.c
+++ b/libavfilter/avf_showspectrum.c
@@ -759,7 +759,7 @@ static int draw_legend(AVFilterContext *ctx, int samples)
             for (y = 0; y < h; y += 40) {
                 float range = s->stop ? s->stop - s->start : inlink->sample_rate / 2;
                 float bin = s->fscale == F_LINEAR ? y : get_log_hz(y, h, inlink->sample_rate);
-                float hertz = s->start + bin * range / (float)(1 << (int)ceil(log2(h)));
+                float hertz = s->start + bin * range / (float)h;
                 char *units;
 
                 if (hertz == 0)
@@ -817,7 +817,7 @@ static int draw_legend(AVFilterContext *ctx, int samples)
             for (x = 0; x < w - 79; x += 80) {
                 float range = s->stop ? s->stop - s->start : inlink->sample_rate / 2;
                 float bin = s->fscale == F_LINEAR ? x : get_log_hz(x, w, inlink->sample_rate);
-                float hertz = s->start + bin * range / (float)(1 << (int)ceil(log2(w)));
+                float hertz = s->start + bin * range / (float)w;
                 char *units;
 
                 if (hertz == 0)



More information about the ffmpeg-cvslog mailing list