DynamicsCompressorNode

The DynamicsCompressorNode interface provides a compression effect, which lowers the volume of the loudest parts of a signal. Compression can help prevent clipping and distortion when multiple sounds are combined, and it is also used in music production and game audio for dynamic control, tone shaping, and creative effects. DynamicsCompressorNode is an AudioNode that has exactly one input and one output.

EventTargetAudioNodeDynamicsCompressorNode
Number of inputs1
Number of outputs1
Channel count mode"clamped-max"
Channel count2
Channel interpretation"speakers"

Constructor

DynamicsCompressorNode()

Creates a new instance of a DynamicsCompressorNode object.

Instance properties

Inherits properties from its parent, AudioNode.

DynamicsCompressorNode.threshold Read only

A k-rate AudioParam representing the decibel value above which the compression will start taking effect.

DynamicsCompressorNode.knee Read only

A k-rate AudioParam containing a decibel value representing the range above the threshold where the curve smoothly transitions to the compressed portion.

DynamicsCompressorNode.ratio Read only

A k-rate AudioParam representing the amount of change, in dB, needed in the input for a 1 dB change in the output.

DynamicsCompressorNode.reduction Read only

A float representing the amount of gain reduction currently applied by the compressor to the signal.

DynamicsCompressorNode.attack Read only

A k-rate AudioParam representing the amount of time, in seconds, required to reduce the gain by 10 dB.

DynamicsCompressorNode.release Read only

A k-rate AudioParam representing the amount of time, in seconds, required to increase the gain by 10 dB.

Instance methods

No specific methods; inherits methods from its parent, AudioNode.

Example

See BaseAudioContext.createDynamicsCompressor() example code.

Specifications

See also