Provides a mastering process and utilities for routing audio into it like a virtual mixing board. Implementations are encouraged to leverage this instead of the main audio destination directly.
- Source:
Namespaces
Members
(static) param
Exposes the parameters associated with the mastering process. Here's an overview of its routing:
GainNode
inputBiquadFilterNode
highpassBiquadFilterNode
lowpassDynamicsCompressorNode
limiterGainNode
limiter makeup gainGainNode
outputAudioDestinationNode
syngen.context
().destination
Properties:
Name | Type | Description | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
gain |
AudioParam | ||||||||||||||||||||||
highpass |
Object |
Properties
|
|||||||||||||||||||||
limiter |
Object |
Properties
|
|||||||||||||||||||||
lowpass |
Object |
Properties
|
|||||||||||||||||||||
preGain |
AudioParam |
- Source:
Methods
(static) createBus() → {GainNode}
Creates a GainNode
that's connected to the main input.
Implementations can leverage buses to create submixes.
- Source:
Returns:
- Type
- GainNode
(static) export(optionsopt) → {MediaRecorder}
Records the output of the provided input and exports it as a WebM file. When no duration is passed, the MediaRecorder must be stopped to complete the export.
Parameters:
Name | Type | Attributes | Description | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
<optional> |
Properties
|
- Source:
Returns:
- Type
- MediaRecorder
(static) input() → {GainNode}
Returns the main input GainNode
.
- Source:
Returns:
- Type
- GainNode
(static) output() → {GainNode}
Returns the main output GainNode
.
- Source:
Returns:
- Type
- GainNode
(static) rebuildFilters()
Occasionally the main filters can enter an unstable or bad state. When this happens the entire mix can drop out to silence. This provides a solution for replacing them with stable filters. Implementations can proactively check for invalid states with an AnalyserNode or AudioWorkletNode. Beware that the nodes that caused the issue may also need reset.
- Source: