← All effects
Spectral
The original WaveWarp icon for Spectral Expander

Spectral Expander

What it is

Spectral expander based on direct manipulation of FFT spectra. All spectral components below a selected magnitude threshold are amplified by a selected gain. (For gain values less than 1, this results in an "expansion" of the dynamic range). IMPORTANT: this expansion technique is crude but computationally efficient. It can introduce significant distortion, depending on the spectral and temporal nature of the audio material being processed. This can lead to interesting audio effects, but may be unacceptable for a given application. If accurate expansion is required, refer to the Dynamic Range Controllers category of the Component Library. The attributes of the effect are adjustable via the Parameter Window, as summarised in the following table. Stereo signals have separate adjustments for left and right channels. Parameter Purpose "Threshold" slider Adjusts the magnitude threshold. All FFT components below the threshold are multiplied by the "Gain factor". "Gain factor" slider Adjusts the gain factor. "Buffer length" slider Adjusts the length of the input data buffer, which also defines the "Latency" (overall delay) of the process. The FFT buffer size is computed from the "Buffer length" rounded up to the nearest power of 2 (for efficient FFT computation). If "double zero-padding" is selected, the FFT buffer size is doubled (after the rounding) to improve the smoothness of the spectrum between successive FFT bins (but without increasing the underlying frequency resolution). The input data buffer is windowed (using a selected profile), then extended to the length of the FFT buffer by padding with zeros (on either side). Successive input data buffers are overlapped by a factor of 2, and the ouputs of the overlapped inverse transformed buffers are summed, in order to avoid discontinuities at the window boundaries. "Output gain" slider Adjusts the overall gain of the output signal, after the spectral manipulations have been applied. "Window type" selection Selects the profile of the windowing function applied to the input data.

How it works

Each successive input buffer is transformed to the frequency domain using the windowed-FFT with double overlapping. The expansion is implemented by applying the gain to all FFT components with magnitudes below the selected threshold. The modified spectrum is then re-converted to the time domain (using the inverse FFT), and the overlapped output buffers are summed to yield the output signal. For an introduction to the Discrete Fourier Transform and the FFT, see, for example, [St] sections 4.1 and 4.2. For further introductory information (with emphasis on audio applications), and for discussions on spectral measurements, zero-padding, windowing, the overlap-add re-synthesis method, and the Short Time Fourier Transform (STFT) for audio applications, see [Roa] p. 1084-1112 and [Moore] p. 61-111.

Stock boards using this effect 1

Audio Spectral Expander