dplug.fft.fft

High-level interfaces for providing FFT analysis, real FFT, and resynthesis from grains.

Members

Enums

FFTDirection
enum FFTDirection
Undocumented in source.

Functions

convertFFTBinToFrequency
float convertFFTBinToFrequency(float fftBin, int fftSize, float samplingRate)

Converts a FFT bin to a frequency.

convertFFTBinToFrequencyInv
float convertFFTBinToFrequencyInv(float fftBin, float invFFTSize, float samplingRate)

Converts a FFT bin to a frequency.

convertFFTBinToNormalizedFrequency
float convertFFTBinToNormalizedFrequency(float fftBin, int fftSize)

Converts a FFT bin to a normalized frequency.

convertFFTBinToNormalizedFrequencyInv
float convertFFTBinToNormalizedFrequencyInv(float fftBin, float invFFTSize)

Converts a FFT bin to a normalized frequency.

convertFrequencyToFFTBin
float convertFrequencyToFFTBin(float frequencyHz, float samplingRate, int fftSize)

Converts a frequency to a FFT bin.

convertFrequencyToFFTBinInv
float convertFrequencyToFFTBinInv(float frequencyHz, float invSamplingRate, int fftSize)

Converts a frequency to a FFT bin.

convertNormalizedFrequencyToFFTBin
float convertNormalizedFrequencyToFFTBin(float normalizedFrequency, int fftSize)

Converts a normalized frequency to a FFT bin.

forwardFFT
void forwardFFT(Complex!T[] buffer)

Perform in-place FFT. Equivalent to std.numeric.fft, but this one is nothrow @nogc.

inverseFFT
void inverseFFT(Complex!T[] buffer)

Perform in-place inverse FFT. Equivalent to std.numeric.inverseFft, but this one is nothrow @nogc.

minimumPhaseImpulse
void minimumPhaseImpulse(T[] inoutImpulse, Complex!T[] tempStorage)

From an impulse, computes a minimum-phase impulse Courtesy of kasaudio, based on Aleksey Vaneev's algorithm See: http://www.kvraudio.com/forum/viewtopic.php?t=197881 MAYDO: does it preserve amplitude?

tempBufferSizeForMinPhase
int tempBufferSizeForMinPhase(T[] inputImpulse)

Structs

FFTAnalyzer
struct FFTAnalyzer(T)

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

RFFT
struct RFFT(T)

Perform a FFT from a real signal, saves up CPU.

Segmenter
struct Segmenter(T)

From a signal, output chunks of determined size, with optional overlap. Introduces approximately windowSize/2 samples delay.

ShortTermReconstruction
struct ShortTermReconstruction(T)

From short term windowed data, output the summed signal. Segments can be irregular and have different size.

Meta