|
LMMS
|
#include <osc.h>
Public Types | |
| enum | { SIZE = 1 << SIZE_BITS } |
Public Member Functions | |
| void | compute_spectrum (float input[SIZE]) |
| Import time domain waveform and calculate spectrum from it. | |
| void | compute_waveform (float output[SIZE]) |
| Generate the waveform from the contained spectrum. | |
| void | remove_dc () |
| remove DC offset of the spectrum (it usually does more harm than good!) | |
| void | make_waveform (float output[SIZE], int cutoff, bool foldover=false) |
Static Public Member Functions | |
| static dsp::fft< float, SIZE_BITS > & | get_fft () |
Public Attributes | |
| std::complex< float > | spectrum [SIZE] |
FFT-based bandlimiting helper class. Allows conversion between time and frequency domains and generating brickwall filtered versions of a waveform given a pre-computed spectrum. Waveform size must be a power of two, and template argument SIZE_BITS is log2 of waveform size.
| anonymous enum |
|
inline |
Import time domain waveform and calculate spectrum from it.
|
inline |
Generate the waveform from the contained spectrum.
|
inlinestatic |
|
inline |
Very basic bandlimiting (brickwall filter) might need to be improved much in future!
|
inline |
remove DC offset of the spectrum (it usually does more harm than good!)
| std::complex<float> dsp::bandlimiter< SIZE_BITS >::spectrum[SIZE] |