UNPKG

1.37 kBTypeScriptView Raw
1import { InputNode, OutputNode, ToneAudioNode, ToneAudioNodeOptions } from "../../core/context/ToneAudioNode.js";
2import { Compressor, CompressorOptions } from "./Compressor.js";
3import { RecursivePartial } from "../../core/util/Interface.js";
4export interface MidSideCompressorOptions extends ToneAudioNodeOptions {
5 mid: Omit<CompressorOptions, keyof ToneAudioNodeOptions>;
6 side: Omit<CompressorOptions, keyof ToneAudioNodeOptions>;
7}
8/**
9 * MidSideCompressor applies two different compressors to the {@link mid}
10 * and {@link side} signal components of the input.
11 * @see {@link MidSideSplit} and {@link MidSideMerge}.
12 * @category Component
13 */
14export declare class MidSideCompressor extends ToneAudioNode<MidSideCompressorOptions> {
15 readonly name: string;
16 readonly input: InputNode;
17 readonly output: OutputNode;
18 /**
19 * Split the incoming signal into Mid/Side
20 */
21 private _midSideSplit;
22 /**
23 * Merge the compressed signal back into a single stream
24 */
25 private _midSideMerge;
26 /**
27 * The compression applied to the mid signal
28 */
29 readonly mid: Compressor;
30 /**
31 * The compression applied to the side signal
32 */
33 readonly side: Compressor;
34 constructor(options?: RecursivePartial<MidSideCompressorOptions>);
35 static getDefaults(): MidSideCompressorOptions;
36 dispose(): this;
37}