@effetune/dsp 0.4.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +106 -5
- package/dist/assets/effetune-dsp.meta.json +91 -37
- package/dist/assets/effetune-dsp.simd.wasm +0 -0
- package/dist/assets/effetune-dsp.wasm +0 -0
- package/dist/catalog/effects-v1.json +798 -12
- package/dist/errors.js +21 -0
- package/dist/generated-effects.d.ts +164 -4
- package/dist/generated-effects.js +94 -3
- package/dist/generated-graph-contract.js +8 -0
- package/dist/graph-document.js +644 -0
- package/dist/graph-engine.js +493 -0
- package/dist/graph.js +467 -0
- package/dist/index.d.ts +247 -1
- package/dist/index.js +22 -0
- package/dist/internal/dsp-engine-binding.js +142 -1
- package/dist/internal/dsp-params.generated.js +362 -16
- package/dist/preset.js +29 -0
- package/dist/runtime.js +73 -5
- package/dist/schemas/chain-v1.schema.json +996 -143
- package/dist/schemas/graph-v1.schema.json +8208 -0
- package/dist/semantics.js +88 -30
- package/dist/worklet-processor.js +8 -1
- package/dist/worklet.d.ts +1 -0
- package/dist/worklet.js +15 -0
- package/package.json +2 -1
package/dist/errors.js
CHANGED
|
@@ -2,6 +2,10 @@ export class EffeTuneError extends Error {
|
|
|
2
2
|
constructor(message, options) {
|
|
3
3
|
super(message, options);
|
|
4
4
|
this.name = new.target.name;
|
|
5
|
+
if (options?.code !== undefined) this.code = options.code;
|
|
6
|
+
if (options?.path !== undefined) this.path = options.path;
|
|
7
|
+
if (options?.nodeId !== undefined) this.nodeId = options.nodeId;
|
|
8
|
+
if (options?.edgeId !== undefined) this.edgeId = options.edgeId;
|
|
5
9
|
}
|
|
6
10
|
}
|
|
7
11
|
|
|
@@ -29,3 +33,20 @@ export function errorFromMessage(errorType, message, fallback) {
|
|
|
29
33
|
const ErrorType = ERROR_TYPES[errorType] ?? EffeTuneRuntimeError;
|
|
30
34
|
return new ErrorType(message || fallback);
|
|
31
35
|
}
|
|
36
|
+
|
|
37
|
+
// Chain-level validation reports the human-readable message; Graph document
|
|
38
|
+
// normalization needs the machine-readable cause to classify the failure. The
|
|
39
|
+
// detail rides on a symbol key so Chain behaviour, serialization and existing
|
|
40
|
+
// error shapes stay unchanged.
|
|
41
|
+
export const VALIDATION_DETAIL = Symbol.for('effetune.validationDetail');
|
|
42
|
+
|
|
43
|
+
export function withValidationDetail(error, detail) {
|
|
44
|
+
if (error instanceof EffeTuneError && error[VALIDATION_DETAIL] === undefined) {
|
|
45
|
+
error[VALIDATION_DETAIL] = detail;
|
|
46
|
+
}
|
|
47
|
+
return error;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export function validationDetail(error) {
|
|
51
|
+
return error?.[VALIDATION_DETAIL];
|
|
52
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Generated by scripts/gen-dsp-library-bindings.mjs. Do not edit.
|
|
2
2
|
import { Effect } from './effect.js';
|
|
3
3
|
|
|
4
|
-
export type EffectType = "LevelMeter" | "Oscilloscope" | "Spectrogram" | "SpectrumAnalyzer" | "StereoMeter" | "ChannelDivider" | "DCOffset" | "FIRCrossover" | "Matrix" | "MultiChannelPanel" | "Mute" | "PolarityInversion" | "StereoBalance" | "Volume" | "Delay" | "TimeAlignment" | "AutoLeveler" | "BrickwallLimiter" | "Compressor" | "Expander" | "Gate" | "MultibandCompressor" | "MultibandExpander" | "MultibandTransient" | "PowerAmpSag" | "TransientShaper" | "BandPassFilter" | "CombFilter" | "EarphoneCableSim" | "FifteenBandGEQ" | "FifteenBandPEQ" | "FiveBandDynamicEQ" | "FiveBandFIRPEQ" | "FiveBandPEQ" | "GroupDelayEQ" | "HiPassFilter" | "LoPassFilter" | "LoudnessEqualizer" | "NarrowRange" | "RoomEQ" | "TiltEQ" | "ToneControl" | "AMRadioSimulator" | "BitCrusher" | "BluetoothSBCSimulator" | "CassetteArtifacts" | "DigitalErrorEmulator" | "DSD64IMDSimulator" | "FMRadioSimulator" | "G726ADPCMSimulator" | "GSMFullRateSimulator" | "HumGenerator" | "MP3CodecSimulator" | "NoiseBlender" | "SimpleJitter" | "SWRadioSimulator" | "TapeArtifacts" | "VinylArtifacts" | "VinylSimulator" | "DopplerDistortion" | "PitchShifter" | "Tremolo" | "WowFlutter" | "Oscillator" | "HornResonator" | "HornResonatorPlus" | "ModalResonator" | "DattorroPlateReverb" | "FDNReverb" | "IRReverb" | "RSReverb" | "DynamicSaturation" | "Exciter" | "HardClipping" | "HarmonicDistortion" | "MultibandSaturation" | "Saturation" | "SubSynth" | "TubeSimulator" | "CrossfeedFilter" | "MSMatrix" | "MultibandBalance" | "StereoBlend";
|
|
4
|
+
export type EffectType = "LevelMeter" | "Oscilloscope" | "Spectrogram" | "SpectrumAnalyzer" | "StereoMeter" | "ChannelDivider" | "DCOffset" | "FIRCrossover" | "Matrix" | "MultiChannelPanel" | "Mute" | "PolarityInversion" | "StereoBalance" | "Volume" | "Delay" | "TimeAlignment" | "AutoLeveler" | "BrickwallLimiter" | "Compressor" | "Expander" | "Gate" | "MultibandCompressor" | "MultibandExpander" | "MultibandTransient" | "PowerAmpSag" | "TransientShaper" | "BandPassFilter" | "CombFilter" | "EarphoneCableSim" | "FifteenBandGEQ" | "FifteenBandPEQ" | "FiveBandDynamicEQ" | "FiveBandFIRPEQ" | "FiveBandPEQ" | "GroupDelayEQ" | "HiPassFilter" | "LoPassFilter" | "LoudnessEqualizer" | "NarrowRange" | "RoomEQ" | "TiltEQ" | "ToneControl" | "AMRadioSimulator" | "BitCrusher" | "BluetoothSBCSimulator" | "CassetteArtifacts" | "DigitalErrorEmulator" | "DSD64IMDSimulator" | "FMRadioSimulator" | "G726ADPCMSimulator" | "GSMFullRateSimulator" | "HumGenerator" | "MP3CodecSimulator" | "NoiseBlender" | "SimpleJitter" | "SWRadioSimulator" | "TapeArtifacts" | "VinylArtifacts" | "VinylSimulator" | "AutoFilter" | "AutoPan" | "Chorus" | "DopplerDistortion" | "FrequencyShifter" | "Phaser" | "PitchShifter" | "RotarySpeaker" | "Tremolo" | "WowFlutter" | "Oscillator" | "HornResonator" | "HornResonatorPlus" | "ModalResonator" | "DattorroPlateReverb" | "FDNReverb" | "IRReverb" | "RSReverb" | "DynamicSaturation" | "Exciter" | "HardClipping" | "HarmonicDistortion" | "MultibandSaturation" | "Saturation" | "SubSynth" | "TubeSimulator" | "CrossfeedFilter" | "MSMatrix" | "MultibandBalance" | "PhaseSelectEQ" | "StereoBlend";
|
|
5
5
|
type RequiredAssetEffectType = "FIRCrossover" | "FiveBandFIRPEQ" | "GroupDelayEQ" | "RoomEQ" | "IRReverb";
|
|
6
6
|
export type EffectChannel = "all" | "stereo" | "left" | "right" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "34" | "56" | "78";
|
|
7
7
|
|
|
@@ -1004,6 +1004,66 @@ export declare class VinylSimulator extends Effect {
|
|
|
1004
1004
|
|
|
1005
1005
|
export declare function createVinylSimulator(options?: VinylSimulatorOptions): VinylSimulator;
|
|
1006
1006
|
|
|
1007
|
+
export interface AutoFilterOptions extends CommonEffectOptions {
|
|
1008
|
+
readonly mode?: "LFO" | "Envelope";
|
|
1009
|
+
readonly filterType?: "Low-pass" | "Band-pass" | "High-pass";
|
|
1010
|
+
readonly minimumFrequency?: number;
|
|
1011
|
+
readonly maximumFrequency?: number;
|
|
1012
|
+
readonly resonance?: number;
|
|
1013
|
+
readonly mix?: number;
|
|
1014
|
+
readonly rate?: number;
|
|
1015
|
+
readonly waveform?: "Sine" | "Triangle";
|
|
1016
|
+
readonly stereoPhase?: number;
|
|
1017
|
+
readonly sensitivity?: number;
|
|
1018
|
+
readonly attack?: number;
|
|
1019
|
+
readonly release?: number;
|
|
1020
|
+
readonly direction?: "Up" | "Down";
|
|
1021
|
+
readonly assets?: never;
|
|
1022
|
+
}
|
|
1023
|
+
|
|
1024
|
+
export declare class AutoFilter extends Effect {
|
|
1025
|
+
static readonly effectType: "AutoFilter";
|
|
1026
|
+
constructor(options?: AutoFilterOptions);
|
|
1027
|
+
}
|
|
1028
|
+
|
|
1029
|
+
export declare function createAutoFilter(options?: AutoFilterOptions): AutoFilter;
|
|
1030
|
+
|
|
1031
|
+
export interface AutoPanOptions extends CommonEffectOptions {
|
|
1032
|
+
readonly rate?: number;
|
|
1033
|
+
readonly depth?: number;
|
|
1034
|
+
readonly center?: number;
|
|
1035
|
+
readonly width?: number;
|
|
1036
|
+
readonly waveform?: "Sine" | "Triangle";
|
|
1037
|
+
readonly phase?: number;
|
|
1038
|
+
readonly assets?: never;
|
|
1039
|
+
}
|
|
1040
|
+
|
|
1041
|
+
export declare class AutoPan extends Effect {
|
|
1042
|
+
static readonly effectType: "AutoPan";
|
|
1043
|
+
constructor(options?: AutoPanOptions);
|
|
1044
|
+
}
|
|
1045
|
+
|
|
1046
|
+
export declare function createAutoPan(options?: AutoPanOptions): AutoPan;
|
|
1047
|
+
|
|
1048
|
+
export interface ChorusOptions extends CommonEffectOptions {
|
|
1049
|
+
readonly mode?: "Chorus" | "Stereo Chorus" | "Ensemble" | "Flanger" | "Vibrato";
|
|
1050
|
+
readonly rate?: number;
|
|
1051
|
+
readonly delay?: number;
|
|
1052
|
+
readonly depth?: number;
|
|
1053
|
+
readonly voices?: number;
|
|
1054
|
+
readonly stereoSpread?: number;
|
|
1055
|
+
readonly feedback?: number;
|
|
1056
|
+
readonly mix?: number;
|
|
1057
|
+
readonly assets?: never;
|
|
1058
|
+
}
|
|
1059
|
+
|
|
1060
|
+
export declare class Chorus extends Effect {
|
|
1061
|
+
static readonly effectType: "Chorus";
|
|
1062
|
+
constructor(options?: ChorusOptions);
|
|
1063
|
+
}
|
|
1064
|
+
|
|
1065
|
+
export declare function createChorus(options?: ChorusOptions): Chorus;
|
|
1066
|
+
|
|
1007
1067
|
export interface DopplerDistortionOptions extends CommonEffectOptions {
|
|
1008
1068
|
readonly coilForce?: number;
|
|
1009
1069
|
readonly speakerMass?: number;
|
|
@@ -1019,6 +1079,46 @@ export declare class DopplerDistortion extends Effect {
|
|
|
1019
1079
|
|
|
1020
1080
|
export declare function createDopplerDistortion(options?: DopplerDistortionOptions): DopplerDistortion;
|
|
1021
1081
|
|
|
1082
|
+
export interface FrequencyShifterOptions extends CommonEffectOptions {
|
|
1083
|
+
readonly mode?: "Shift" | "Ring Mod" | "Barber-pole";
|
|
1084
|
+
readonly shift?: number;
|
|
1085
|
+
readonly carrierFrequency?: number;
|
|
1086
|
+
readonly minimumShift?: number;
|
|
1087
|
+
readonly maximumShift?: number;
|
|
1088
|
+
readonly rate?: number;
|
|
1089
|
+
readonly direction?: "Up" | "Down";
|
|
1090
|
+
readonly stereoPhase?: number;
|
|
1091
|
+
readonly mix?: number;
|
|
1092
|
+
readonly assets?: never;
|
|
1093
|
+
}
|
|
1094
|
+
|
|
1095
|
+
export declare class FrequencyShifter extends Effect {
|
|
1096
|
+
static readonly effectType: "FrequencyShifter";
|
|
1097
|
+
constructor(options?: FrequencyShifterOptions);
|
|
1098
|
+
}
|
|
1099
|
+
|
|
1100
|
+
export declare function createFrequencyShifter(options?: FrequencyShifterOptions): FrequencyShifter;
|
|
1101
|
+
|
|
1102
|
+
export interface PhaserOptions extends CommonEffectOptions {
|
|
1103
|
+
readonly mode?: "Classic" | "Barber-pole";
|
|
1104
|
+
readonly rate?: number;
|
|
1105
|
+
readonly centerFrequency?: number;
|
|
1106
|
+
readonly range?: number;
|
|
1107
|
+
readonly stages?: 2 | 4 | 6 | 8 | 10 | 12;
|
|
1108
|
+
readonly feedback?: number;
|
|
1109
|
+
readonly stereoPhase?: number;
|
|
1110
|
+
readonly direction?: "Up" | "Down";
|
|
1111
|
+
readonly mix?: number;
|
|
1112
|
+
readonly assets?: never;
|
|
1113
|
+
}
|
|
1114
|
+
|
|
1115
|
+
export declare class Phaser extends Effect {
|
|
1116
|
+
static readonly effectType: "Phaser";
|
|
1117
|
+
constructor(options?: PhaserOptions);
|
|
1118
|
+
}
|
|
1119
|
+
|
|
1120
|
+
export declare function createPhaser(options?: PhaserOptions): Phaser;
|
|
1121
|
+
|
|
1022
1122
|
export interface PitchShifterOptions extends CommonEffectOptions {
|
|
1023
1123
|
readonly pitchShift?: number;
|
|
1024
1124
|
readonly fineTune?: number;
|
|
@@ -1034,6 +1134,26 @@ export declare class PitchShifter extends Effect {
|
|
|
1034
1134
|
|
|
1035
1135
|
export declare function createPitchShifter(options?: PitchShifterOptions): PitchShifter;
|
|
1036
1136
|
|
|
1137
|
+
export interface RotarySpeakerOptions extends CommonEffectOptions {
|
|
1138
|
+
readonly speedState?: "Stop" | "Slow" | "Fast";
|
|
1139
|
+
readonly speed?: number;
|
|
1140
|
+
readonly acceleration?: number;
|
|
1141
|
+
readonly crossover?: number;
|
|
1142
|
+
readonly rotorBalance?: number;
|
|
1143
|
+
readonly stereoWidth?: number;
|
|
1144
|
+
readonly dopplerDepth?: number;
|
|
1145
|
+
readonly amplitudeDepth?: number;
|
|
1146
|
+
readonly mix?: number;
|
|
1147
|
+
readonly assets?: never;
|
|
1148
|
+
}
|
|
1149
|
+
|
|
1150
|
+
export declare class RotarySpeaker extends Effect {
|
|
1151
|
+
static readonly effectType: "RotarySpeaker";
|
|
1152
|
+
constructor(options?: RotarySpeakerOptions);
|
|
1153
|
+
}
|
|
1154
|
+
|
|
1155
|
+
export declare function createRotarySpeaker(options?: RotarySpeakerOptions): RotarySpeaker;
|
|
1156
|
+
|
|
1037
1157
|
export interface TremoloOptions extends CommonEffectOptions {
|
|
1038
1158
|
readonly rate?: number;
|
|
1039
1159
|
readonly depth?: number;
|
|
@@ -1195,6 +1315,7 @@ export interface IRReverbOptions extends CommonEffectOptions {
|
|
|
1195
1315
|
readonly latency?: 0 | 128 | 256 | 512 | 1024;
|
|
1196
1316
|
readonly convolutionRate?: "auto" | "full" | "half" | "quarter";
|
|
1197
1317
|
readonly wetLevel?: number;
|
|
1318
|
+
readonly dryEnabled?: boolean;
|
|
1198
1319
|
readonly dryLevel?: number;
|
|
1199
1320
|
readonly preDelay?: number;
|
|
1200
1321
|
readonly assets: IRReverbAssets;
|
|
@@ -1345,7 +1466,7 @@ export declare function createSubSynth(options?: SubSynthOptions): SubSynth;
|
|
|
1345
1466
|
|
|
1346
1467
|
export interface TubeSimulatorOptions extends CommonEffectOptions {
|
|
1347
1468
|
readonly inputVolume?: number;
|
|
1348
|
-
readonly tube?: "12AX7" | "12AT7" | "12AU7";
|
|
1469
|
+
readonly tube?: "12AX7" | "12AT7" | "12AU7" | "Bypass";
|
|
1349
1470
|
readonly bias?: number;
|
|
1350
1471
|
readonly plateVoltage?: number;
|
|
1351
1472
|
readonly sourceImpedance?: number;
|
|
@@ -1354,8 +1475,8 @@ export interface TubeSimulatorOptions extends CommonEffectOptions {
|
|
|
1354
1475
|
readonly mix?: number;
|
|
1355
1476
|
readonly inputReference?: number;
|
|
1356
1477
|
readonly negativeFeedback?: number;
|
|
1357
|
-
readonly outputStage?: "Line" | "Power";
|
|
1358
|
-
readonly powerTube?: "EL84" | "EL34";
|
|
1478
|
+
readonly outputStage?: "Line" | "Power" | "SingleEnded";
|
|
1479
|
+
readonly powerTube?: "EL84" | "EL34" | "6L6GC" | "KT88";
|
|
1359
1480
|
readonly powerBPlus?: number;
|
|
1360
1481
|
readonly cathodeResistor?: number;
|
|
1361
1482
|
readonly screenTap?: "0" | "20" | "43";
|
|
@@ -1364,6 +1485,10 @@ export interface TubeSimulatorOptions extends CommonEffectOptions {
|
|
|
1364
1485
|
readonly actualSpeakerLoad?: number;
|
|
1365
1486
|
readonly safetyTrim?: number;
|
|
1366
1487
|
readonly autoGainReduction?: boolean;
|
|
1488
|
+
readonly seTube?: "300B" | "2A3";
|
|
1489
|
+
readonly seBPlus?: number;
|
|
1490
|
+
readonly seCathodeResistor?: number;
|
|
1491
|
+
readonly sePrimaryImpedance?: "2.5" | "3.5" | "5.0";
|
|
1367
1492
|
readonly assets?: never;
|
|
1368
1493
|
}
|
|
1369
1494
|
|
|
@@ -1419,6 +1544,27 @@ export declare class MultibandBalance extends Effect {
|
|
|
1419
1544
|
|
|
1420
1545
|
export declare function createMultibandBalance(options?: MultibandBalanceOptions): MultibandBalance;
|
|
1421
1546
|
|
|
1547
|
+
export interface PhaseSelectEQOptions extends CommonEffectOptions {
|
|
1548
|
+
readonly regionEnabled?: readonly [boolean, boolean, boolean, boolean, boolean];
|
|
1549
|
+
readonly outerFrequencyLow?: readonly [number, number, number, number, number];
|
|
1550
|
+
readonly coreFrequencyLow?: readonly [number, number, number, number, number];
|
|
1551
|
+
readonly coreFrequencyHigh?: readonly [number, number, number, number, number];
|
|
1552
|
+
readonly outerFrequencyHigh?: readonly [number, number, number, number, number];
|
|
1553
|
+
readonly outerPhaseLow?: readonly [number, number, number, number, number];
|
|
1554
|
+
readonly corePhaseLow?: readonly [number, number, number, number, number];
|
|
1555
|
+
readonly corePhaseHigh?: readonly [number, number, number, number, number];
|
|
1556
|
+
readonly outerPhaseHigh?: readonly [number, number, number, number, number];
|
|
1557
|
+
readonly gain?: readonly [number, number, number, number, number];
|
|
1558
|
+
readonly assets?: never;
|
|
1559
|
+
}
|
|
1560
|
+
|
|
1561
|
+
export declare class PhaseSelectEQ extends Effect {
|
|
1562
|
+
static readonly effectType: "PhaseSelectEQ";
|
|
1563
|
+
constructor(options?: PhaseSelectEQOptions);
|
|
1564
|
+
}
|
|
1565
|
+
|
|
1566
|
+
export declare function createPhaseSelectEQ(options?: PhaseSelectEQOptions): PhaseSelectEQ;
|
|
1567
|
+
|
|
1422
1568
|
export interface StereoBlendOptions extends CommonEffectOptions {
|
|
1423
1569
|
readonly stereo?: number;
|
|
1424
1570
|
readonly assets?: never;
|
|
@@ -1491,8 +1637,14 @@ export interface EffectOptionsByType {
|
|
|
1491
1637
|
readonly TapeArtifacts: TapeArtifactsOptions;
|
|
1492
1638
|
readonly VinylArtifacts: VinylArtifactsOptions;
|
|
1493
1639
|
readonly VinylSimulator: VinylSimulatorOptions;
|
|
1640
|
+
readonly AutoFilter: AutoFilterOptions;
|
|
1641
|
+
readonly AutoPan: AutoPanOptions;
|
|
1642
|
+
readonly Chorus: ChorusOptions;
|
|
1494
1643
|
readonly DopplerDistortion: DopplerDistortionOptions;
|
|
1644
|
+
readonly FrequencyShifter: FrequencyShifterOptions;
|
|
1645
|
+
readonly Phaser: PhaserOptions;
|
|
1495
1646
|
readonly PitchShifter: PitchShifterOptions;
|
|
1647
|
+
readonly RotarySpeaker: RotarySpeakerOptions;
|
|
1496
1648
|
readonly Tremolo: TremoloOptions;
|
|
1497
1649
|
readonly WowFlutter: WowFlutterOptions;
|
|
1498
1650
|
readonly Oscillator: OscillatorOptions;
|
|
@@ -1514,6 +1666,7 @@ export interface EffectOptionsByType {
|
|
|
1514
1666
|
readonly CrossfeedFilter: CrossfeedFilterOptions;
|
|
1515
1667
|
readonly MSMatrix: MSMatrixOptions;
|
|
1516
1668
|
readonly MultibandBalance: MultibandBalanceOptions;
|
|
1669
|
+
readonly PhaseSelectEQ: PhaseSelectEQOptions;
|
|
1517
1670
|
readonly StereoBlend: StereoBlendOptions;
|
|
1518
1671
|
}
|
|
1519
1672
|
|
|
@@ -1577,8 +1730,14 @@ export interface EffectClassByType {
|
|
|
1577
1730
|
readonly TapeArtifacts: TapeArtifacts;
|
|
1578
1731
|
readonly VinylArtifacts: VinylArtifacts;
|
|
1579
1732
|
readonly VinylSimulator: VinylSimulator;
|
|
1733
|
+
readonly AutoFilter: AutoFilter;
|
|
1734
|
+
readonly AutoPan: AutoPan;
|
|
1735
|
+
readonly Chorus: Chorus;
|
|
1580
1736
|
readonly DopplerDistortion: DopplerDistortion;
|
|
1737
|
+
readonly FrequencyShifter: FrequencyShifter;
|
|
1738
|
+
readonly Phaser: Phaser;
|
|
1581
1739
|
readonly PitchShifter: PitchShifter;
|
|
1740
|
+
readonly RotarySpeaker: RotarySpeaker;
|
|
1582
1741
|
readonly Tremolo: Tremolo;
|
|
1583
1742
|
readonly WowFlutter: WowFlutter;
|
|
1584
1743
|
readonly Oscillator: Oscillator;
|
|
@@ -1600,6 +1759,7 @@ export interface EffectClassByType {
|
|
|
1600
1759
|
readonly CrossfeedFilter: CrossfeedFilter;
|
|
1601
1760
|
readonly MSMatrix: MSMatrix;
|
|
1602
1761
|
readonly MultibandBalance: MultibandBalance;
|
|
1762
|
+
readonly PhaseSelectEQ: PhaseSelectEQ;
|
|
1603
1763
|
readonly StereoBlend: StereoBlend;
|
|
1604
1764
|
}
|
|
1605
1765
|
|