DynamicsCompressorNode

open class DynamicsCompressorNode(context: BaseAudioContext, options: DynamicsCompressorOptions = definedExternally) : AudioNode(source)

The DynamicsCompressorNode interface provides a compression effect, which lowers the volume of the loudest parts of the signal in order to help prevent clipping and distortion that can occur when multiple sounds are played and multiplexed together at once. This is often used in musical production and game audio. DynamicsCompressorNode is an AudioNode that has exactly one input and one output.

MDN Reference

Constructors

Link copied to clipboard
constructor(context: BaseAudioContext, options: DynamicsCompressorOptions = definedExternally)

Properties

Link copied to clipboard

The attack property of the DynamicsCompressorNode interface is a k-rate AudioParam representing the amount of time, in seconds, required to reduce the gain by 10 dB. It defines how quickly the signal is adapted when its volume is increased.

Link copied to clipboard

The channelCount property of the AudioNode interface represents an integer used to determine how many channels are used when up-mixing and down-mixing connections to any inputs to the node.

Link copied to clipboard

The channelCountMode property of the AudioNode interface represents an enumerated value describing the way channels must be matched between the node's inputs and outputs.

Link copied to clipboard

The channelInterpretation property of the AudioNode interface represents an enumerated value describing how input channels are mapped to output channels when the number of inputs/outputs is different. For example, this setting defines how a mono input will be up-mixed to a stereo or 5.1 channel output, or how a quad channel input will be down-mixed to a stereo or mono output.

Link copied to clipboard

The read-only context property of the AudioNode interface returns the associated BaseAudioContext, that is the object representing the processing graph the node is participating in.

Link copied to clipboard

The knee property of the DynamicsCompressorNode interface is a k-rate AudioParam containing a decibel value representing the range above the threshold where the curve smoothly transitions to the compressed portion.

Link copied to clipboard

The numberOfInputs property of the AudioNode interface returns the number of inputs feeding the node. Source nodes are defined as nodes having a numberOfInputs property with a value of 0.

Link copied to clipboard

The numberOfOutputs property of the AudioNode interface returns the number of outputs coming out of the node. Destination nodes — like AudioDestinationNode — have a value of 0 for this attribute.

Link copied to clipboard

The ratio property of the DynamicsCompressorNode interface Is a k-rate AudioParam representing the amount of change, in dB, needed in the input for a 1 dB change in the output.

Link copied to clipboard

The reduction read-only property of the DynamicsCompressorNode interface is a float representing the amount of gain reduction currently applied by the compressor to the signal.

Link copied to clipboard

The release property of the DynamicsCompressorNode interface Is a k-rate AudioParam representing the amount of time, in seconds, required to increase the gain by 10 dB. It defines how quick the signal is adapted when its volume is reduced.

Link copied to clipboard

The threshold property of the DynamicsCompressorNode interface is a k-rate AudioParam representing the decibel value above which the compression will start taking effect.

Functions

Link copied to clipboard
fun connect(destinationParam: AudioParam, output: Int = definedExternally)

fun connect(destinationNode: AudioNode, output: Int = definedExternally, input: Int = definedExternally): AudioNode

The connect() method of the AudioNode interface lets you connect one of the node's outputs to a target, which may be either another AudioNode (thereby directing the sound data to the specified node) or an AudioParam, so that the node's output data is automatically used to change the value of that parameter over time.

Link copied to clipboard

The disconnect() method of the AudioNode interface lets you disconnect one or more nodes from the node on which the method is called.

fun disconnect(output: Int)
fun disconnect(destinationNode: AudioNode)
fun disconnect(destinationParam: AudioParam)
fun disconnect(destinationNode: AudioNode, output: Int)
fun disconnect(destinationParam: AudioParam, output: Int)
fun disconnect(destinationNode: AudioNode, output: Int, input: Int)
Link copied to clipboard
open fun dispatchEvent(event: Event): Boolean
Link copied to clipboard