aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2014-09-10 11:40:34 +0000
committerDimitri Sokolyuk <demon@dim13.org>2014-09-10 11:40:34 +0000
commitfe63e6bf79bd34ac5acc443699cb1ea8b54c06f5 (patch)
tree43d694cd39837df4290ca9656bab7b95cb8ed147
parentfa255f3f07ac49b52e325b3225e6186e73843e5e (diff)
move normalization factor into window function
-rw-r--r--fft.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/fft.c b/fft.c
index ea9ba2c..46b91d7 100644
--- a/fft.c
+++ b/fft.c
@@ -43,8 +43,10 @@ hamming(size_t n)
p = calloc(n, sizeof(double));
assert(p);
- for (i = 0; i < n; i++)
+ for (i = 0; i < n; i++) {
p[i] = 0.54 - 0.46 * cos((2 * M_PI * i) / (n - 1));
+ p[i] /= INT16_MAX;
+ }
return p;
}
@@ -91,8 +93,7 @@ exec_fft(struct fft *p, int16_t *data, double *out, enum fft_chan chan)
int i;
for (i = 0; i < p->n; i++)
- p->in[i] = p->window[i] * data[2 * i + chan]
- / (double)INT16_MAX;
+ p->in[i] = p->window[i] * data[2 * i + chan];
fftw_execute(p->plan);