The Compressor Node attenuates (compresses) the loud parts in an audio signal. At the same time, it allows more quiet parts to remain at their original volume. This is useful when you need to attenuate loud sounds, but reducing the overall volume uniformly (e.g. by using a Gain Node) would drown out more quiet parts way too much. Simply put, this Node automatically lowers and raises the volume as needed.
This technique is also called loudness equalization, or dynamic range compression.
How to Use
The Compressor Node has 2 modes: Main input mode (default) and Sidechain mode.
In Main input mode (default), the Compressor Node applies a gain reduction (compression) to the only input signal, based on the volume of that signal. If you use this mode, just connect an audio source, like an Audio File Node, and then connect to Compressor Node to its intended destination (such as an Audio Destination Node, to listed to its results).
In Sidechain mode, the Compressor Node applies a gain reduction (compression) to its main input signal, based on the volume of the sidechain signal. A common use case for this is compressing a bass line based on a kick drum.
The audio signal to compress. You can connect a control signal too. Similar alternatives, which are better suited for control signals, are the Constant Range Transform Node and the Clamp Node.
- Main input – compress the single connected input signal, based on the volume of that signal.
- Sidechain – compress the main input signal using the volume of another signal, the sidechain signal.
The threshold, in dB, above which the compression will start kicking in. The higher this value is, the louder a sound needs to be to result in a volume reduction. Sounds below this threshold will not affect compression.
Sets the range above the threshold (in dB) where the compression curve smoothly transitions to the compressed portion. A higher value adds more easing around the threshold, instead of starting to apply the compression immediately.
How strong the compression is when the compression threshold is reached. A lower value will just slightly attenuate the signal for loud sounds, but generally allow them to reach far above the Threshold. A higher value will apply a more harsh compression, and allow loud sounds to surpass the set threshold a lot less.
How fast the gain reduction is released, i.e. how fast the signal recovers from compression.
To better understand how this works, understand how dynamic compression works: when there is a loud sound in the audio signal, the Node will lower the volume of the entire signal, temporarily. When the signal is no longer loud, the Node will gradually increase the volume back up, so that the volume reduction is not permanent. The rate at which volume is raised back up, is what the Release setting controls. The lower it is, the faster the volume raises back up.
This value denotes the duration, in seconds, that it takes to increase the volume back up, by 10 dB.
How fast the gain reduction is applied.
A low value will apply a more immediate and sharp compression for loud sounds. At the same time, higher values will apply a more gradual, softer reduction.
The value denotes the duration, in seconds, it takes to reduce the volume by 10 dB during the compression phase.
Main input mode only
The lookahead delay of the signal, in seconds.
In Main input mode, the output signal is delayed, so that compression has some overhead to take effect. This is called a lookahead, and it allows the Compressor Node to apply the compression in advance and smooth out sudden changes in volume.
The audio signal with compression applied.
If the input audio signal never reaches above the compression threshold, this output signal will be identical to the input signal (not accounting for latency).
This Node implements a downward dynamic compression effect, with a 6ms look ahead window. This means:
- This Node by itself can only ever produce lower or unchanged volume, but never higher
- There is a fixed 6ms processing latency