Table of Contents

Class AudioEffectCompressor

Adds a compressor audio effect to an audio bus.

Reduces sounds that exceed a certain threshold level, smooths out the dynamics and increases the overall volume.

Inheritance
AudioEffectCompressor

Remarks

Dynamic range compressor reduces the level of the sound when the amplitude goes over a certain threshold in Decibels. One of the main uses of a compressor is to increase the dynamic range by clipping as little as possible (when sound goes over 0dB).

Compressor has many uses in the mix:

  • In the Master bus to compress the whole output (although an AudioEffectLimiter is probably better).

  • In voice channels to ensure they sound as balanced as possible.

  • Sidechained. This can reduce the sound level sidechained with another audio bus for threshold detection. This technique is common in video game mixing to the level of music and SFX while voices are being heard.

  • Accentuates transients by using a wider attack, making effects sound more punchy.

See Also

Properties

attack_us

Compressor's reaction time when the signal exceeds the threshold, in microseconds. Value can range from 20 to 2000.

var attack_us : float = 20.0

Property Value

float

Remarks

  • void set_attack_us(float value)
  • float get_attack_us

gain

Gain applied to the output signal.

var gain : float = 0.0

Property Value

float

Remarks

mix

Balance between original signal and effect signal. Value can range from 0 (totally dry) to 1 (totally wet).

var mix : float = 1.0

Property Value

float

Remarks

ratio

Amount of compression applied to the audio once it passes the threshold level. The higher the ratio, the more the loud parts of the audio will be compressed. Value can range from 1 to 48.

var ratio : float = 4.0

Property Value

float

Remarks

release_ms

Compressor's delay time to stop reducing the signal after the signal level falls below the threshold, in milliseconds. Value can range from 20 to 2000.

var release_ms : float = 250.0

Property Value

float

Remarks

  • void set_release_ms(float value)
  • float get_release_ms

sidechain

Reduce the sound level using another audio bus for threshold detection.

var sidechain : StringName = &""

Property Value

StringName

Remarks

threshold

The level above which compression is applied to the audio. Value can range from -60 to 0.

var threshold : float = 0.0

Property Value

float

Remarks

  • void set_threshold(float value)
  • float get_threshold