IFFT Inverse Fast Fourier Transform


Inherits from: Object : AbstractFunction : UGen 



IFFT.new(chain, wintype, winsize)

IFFT.ar(chain, wintype, winsize)

IFFT.kr(chain, wintype, winsize)



The fast fourier transform analyzes the frequency content of a signal. The IFFT UGen converts this frequency-domain information back into time-domain audio data. Most often this is used as the end of a process which begins with FFT, followed by frequency-domain processing using PV (phase-vocoder) UGens, followed by IFFT.


chain - The FFT "chain" signal coming originally from an FFT UGen, perhaps via other PV UGens.

wintype - defines how the data is windowed:

-1 is for rectangular windowing, simple but typically not recommended; 

0 (the default) is for Sine windowing, typically recommended for phase-vocoder work; 

1 is for Hann windowing, typically recommended for analysis work.

winsize - can be used to account for zero-padding, in the same way as the FFT UGen.


The IFFT UGen converts the FFT data in-place (in the original FFT buffer) and overlap-adds the result to produce a continuous signal at its output.


See also: FFT Overview, FFT, PV_Copy




// example

(

{ var in, chain;

in = WhiteNoise.ar(0.05);

chain = FFT(LocalBuf(2048), in);

chain.inspect; // its an FFT

Out.ar(0, 

IFFT(chain) // inverse FFT

);

}.play

)


See FFT for more examples.