Convert between time and frequency domains
The Fourier Transform is the generalization of Fourier series to non-periodic signals. It converts a signal from the time domain into the frequency domain, revealing which frequencies are present and how strong they are.
The FFT (Fast Fourier Transform) is an efficient algorithm for computing this transformation in O(n log n) time, making it practical for real-time audio and signal processing.
Watch how different waveforms appear in the frequency domain. Notice:
The FFT (Fast Fourier Transform) converts the time-domain signal into its frequency components. Each bar shows the amplitude of a specific frequency present in the signal.
Continuous Fourier Transform:
Discrete Fourier Transform (DFT):
The DFT converts N samples to N frequency bins. The FFT computes this efficiently using divide-and-conquer (Cooley-Tukey algorithm).
The transform of a sum equals the sum of transforms. Each frequency component can be analyzed independently.
Shifting a signal in time changes its phase but not its magnitude spectrum.
Convolution in time domain = multiplication in frequency domain. This makes filtering very efficient!
Energy is preserved: total energy in time domain equals total energy in frequency domain.
When sampling a continuous signal, the Nyquist theoremstates that you must sample at least twice the highest frequency present to avoid aliasing - where high frequencies masquerade as lower ones.
This is why CD audio samples at 44.1 kHz - to capture frequencies up to ~22 kHz, covering the range of human hearing.