Leo McCormack, and Vesa Välimäki

FFT-based Dynamic Range Compression

Companion page for a paper in the 14th Sound and Music Computing Conference, Espoo, Finland, July 5–8, 2017

Abstract

Many of the dynamic range compressor (DRC) designs that are deployed in the marketplace today are constrained to operate in the time-domain; therefore, they offer only temporally dependent control of the amplitude envelope of a signal. Designs that offer an element of frequency dependency, are often restricted to perform specific tasks intended by the developer. Therefore, in order to realise a more flexible DRC implementation, this paper proposes a generalised time-frequency domain design that accommodates both temporally-dependent and frequency-dependent dynamic range control; for which an FFT-based implementation is also presented. Examples given in this paper reveal how the design can be tailored to perform a variety of tasks, using simple parameter manipulation; such as frequency-depended ducking for automatic-mixing purposes and high-resolution multi-band compression.

Paper

The paper will be made available soon. However, the poster is already avialable:

VST

The Windows and MacOSX VSTs are avaiable here:

Examples

The samples on this webpage have been generated off-line using a MatLab implementation of the proposed algorithm. The alias-free STFT filterbank was selected as the time-frequency transform for the implementation. A hop size of 128 samples and an FFT length of 1024 samples were selected, with a further sub-division of the lowest four bands to increase low-frequency resolution; therefore, there are 133 frequency bands in total, with centre frequencies that roughly correspond to the resolution of human hearing. A sample rate of 48\,kHz and a frame size of 512 samples have been used.

Drums

  • Reference sample | Processed sample | A drum loop, which has been passed through the proposed algorithm using: threshold = -20dB, ratio = 8:1, attack = 10ms, and release = 80ms, for all sub-bands

Music 1*

  • Reference sample | Processed sample | A music sample that has been passed through the proposed algorithm using: threshold = -40dB, ratio = 10:1, attack = 20ms, and release = 10ms, for all sub-bands

Music 2*

  • Reference sample | Processed sample | A music sample that has been passed through the proposed algorithm using: threshold = -30dB, ratio = 10:1, attack = 5ms, and release = 80ms, for all sub-bands

Music 3*

  • Reference sample | Processed sample | A music sample that has been passed through the proposed algorithm using: threshold = -20dB, ratio = 4:1, attack = 1ms, and release = 60ms, for all sub-bands

Whitenoise with Drums as side-chain

Whitenoise with Speech as side-chain

* Special thanks to Julian Parker, for allowing us to use his sound samples.


http://research.spa.aalto.fi/publications/papers/smc17-fft-drc/
Updated on Wednesday April 26, 2017
This page uses HTML5, CSS, and JavaScript