1 | import { ToneAudioNode, ToneAudioNodeOptions } from "../../core/context/ToneAudioNode.js";
|
2 | import { Split } from "./Split.js";
|
3 | export type MidSideSplitOptions = ToneAudioNodeOptions;
|
4 | /**
|
5 | * Mid/Side processing separates the the 'mid' signal (which comes out of both the left and the right channel)
|
6 | * and the 'side' (which only comes out of the the side channels).
|
7 | * ```
|
8 | * Mid = (Left+Right)/sqrt(2); // obtain mid-signal from left and right
|
9 | * Side = (Left-Right)/sqrt(2); // obtain side-signal from left and right
|
10 | * ```
|
11 | * @category Component
|
12 | */
|
13 | export declare class MidSideSplit extends ToneAudioNode<MidSideSplitOptions> {
|
14 | readonly name: string;
|
15 | readonly input: Split;
|
16 | /**
|
17 | * There is no output node, use either {@link mid} or {@link side} outputs.
|
18 | */
|
19 | readonly output: undefined;
|
20 | /**
|
21 | * Split the incoming signal into left and right channels
|
22 | */
|
23 | private _split;
|
24 | /**
|
25 | * Sums the left and right channels
|
26 | */
|
27 | private _midAdd;
|
28 | /**
|
29 | * Subtract left and right channels.
|
30 | */
|
31 | private _sideSubtract;
|
32 | /**
|
33 | * The "mid" output. `(Left+Right)/sqrt(2)`
|
34 | */
|
35 | readonly mid: ToneAudioNode;
|
36 | /**
|
37 | * The "side" output. `(Left-Right)/sqrt(2)`
|
38 | */
|
39 | readonly side: ToneAudioNode;
|
40 | constructor(options?: Partial<MidSideSplitOptions>);
|
41 | dispose(): this;
|
42 | }
|