FFTAnalyzer

From a signal, output short term FFT data. Variable overlap. Introduces approximately windowSize/2 samples delay. Uses a real FFT to gain some speed.

Destructor

~this
~this()
Undocumented in source.

Members

Functions

feed
bool feed(T x, Complex!T[] fftData)
Undocumented in source. Be warned that the author may not have intended to support it.
initialize
void initialize(int windowSize, int fftSize, int analysisPeriod, WindowDesc windowDesc, bool zeroPhaseWindowing)

To call at initialization and whenever samplerate changes. windowSize = size of window, expressed in samples fftSize = size of FFT. Must be power-of-two and >= windowSize. Missing samples are zero-padded in time domain. analysisPeriod = period of analysis results, allow to be more precise frequentially, expressed in samples. Basic overlap is achieved with windowSize = 2 * analysisPeriod if zeroPhaseWindowing = true, "zero phase" windowing is used (center of window is at first sample, zero-padding happen at center)

realFFT
RFFT!T realFFT()

Gets the RFFT object which allows to perform efficient inverse FFT with the same pre-computed tables.

Meta