diff options
Diffstat (limited to 'gtk2_ardour/fft.h')
-rw-r--r-- | gtk2_ardour/fft.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gtk2_ardour/fft.h b/gtk2_ardour/fft.h index d80616b77f..3a4d0f8063 100644 --- a/gtk2_ardour/fft.h +++ b/gtk2_ardour/fft.h @@ -38,8 +38,13 @@ class FFT FFT(uint32_t); ~FFT(); + enum WindowingType { + NONE, + HANN + }; + void reset(); - void analyze(ARDOUR::Sample *); + void analyze(ARDOUR::Sample *, WindowingType w = NONE); void calculate(); uint32_t bins() const { return _data_size; } @@ -47,12 +52,17 @@ class FFT float power_at_bin(uint32_t i) const { return _power_at_bin[i]; } float phase_at_bin(uint32_t i) const { return _phase_at_bin[i]; } + private: + float *get_hann_window(); + uint32_t const _window_size; uint32_t const _data_size; uint32_t _iterations; + float *_hann_window; + float *_fftInput; float *_fftOutput; |