summaryrefslogtreecommitdiff
path: root/libavfilter
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2018-10-05 00:15:26 +0200
committerPaul B Mahol <onemda@gmail.com>2018-10-05 00:15:26 +0200
commitd39fae08866efebbfdf25951fbaff4df9d26e6b3 (patch)
tree9b7bf7ce69f99938d66a917ec9e76b5ba06e833d /libavfilter
parent196dd13c76c213e79541c3a692873cdd59c0efa6 (diff)
downloadffmpeg-d39fae08866efebbfdf25951fbaff4df9d26e6b3.tar.gz
avfilter/avf_showspectrum: fix scaling in zoom mode
Diffstat (limited to 'libavfilter')
-rw-r--r--libavfilter/avf_showspectrum.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libavfilter/avf_showspectrum.c b/libavfilter/avf_showspectrum.c
index 38d0a9d768..a750b9a3f1 100644
--- a/libavfilter/avf_showspectrum.c
+++ b/libavfilter/avf_showspectrum.c
@@ -340,12 +340,12 @@ static int run_channel_fft(AVFilterContext *ctx, void *arg, int jobnr, int nb_jo
FFTComplex *h = s->fft_scratch[ch];
int L = s->buf_size;
int N = s->win_size;
- int M = s->win_size;
+ int M = s->win_size / 2;
- phi = 2.0 * M_PI * (s->stop - s->start) / (double)inlink->sample_rate / (s->win_size - 1);
+ phi = 2.0 * M_PI * (s->stop - s->start) / (double)inlink->sample_rate / (M - 1);
theta = 2.0 * M_PI * s->start / (double)inlink->sample_rate;
- for (int n = 0; n < s->win_size; n++) {
+ for (int n = 0; n < M; n++) {
h[n].re = cos(n * n / 2.0 * phi);
h[n].im = sin(n * n / 2.0 * phi);
}