@libraz/libsonare 1.5.4 → 1.5.5

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/dist/index.d.ts CHANGED
@@ -156,6 +156,8 @@ interface MasteringResult {
156
156
  inputLufs: number;
157
157
  outputLufs: number;
158
158
  appliedGainDb: number;
159
+ /** True when peak headroom prevented the requested LUFS target. */
160
+ loudnessTargetLimited?: boolean;
159
161
  latencySamples?: number;
160
162
  }
161
163
  type MasteringProcessorParams = Record<string, number | boolean>;
@@ -343,6 +345,7 @@ interface MasteringChainConfig {
343
345
  monoMaker?: {
344
346
  enabled?: boolean;
345
347
  amount?: number;
348
+ frequencyHz?: number;
346
349
  };
347
350
  };
348
351
  maximizer?: {
@@ -417,6 +420,8 @@ interface MasteringChainResult {
417
420
  outputTruePeakDbtp: number;
418
421
  /** EBU Tech 3342 Loudness Range of the output (LU). */
419
422
  outputLra: number;
423
+ /** True when peak headroom prevented the requested LUFS target. */
424
+ loudnessTargetLimited: boolean;
420
425
  /** Per-stage gain reductions for the dynamics/maximizer stages (a subset of `stages`). */
421
426
  stageGainReductions: StageGainReduction[];
422
427
  }
@@ -431,6 +436,7 @@ interface MasteringChainStereoResult {
431
436
  /** See {@link MasteringChainResult} for field semantics. */
432
437
  outputTruePeakDbtp: number;
433
438
  outputLra: number;
439
+ loudnessTargetLimited: boolean;
434
440
  stageGainReductions: StageGainReduction[];
435
441
  }
436
442
  /**
@@ -730,6 +736,10 @@ interface Beat {
730
736
  interface Chord {
731
737
  root: PitchClass;
732
738
  bass: PitchClass;
739
+ /** Canonical core spelling; stable across all language bindings. */
740
+ rootName: string;
741
+ /** Canonical core spelling; stable across all language bindings. */
742
+ bassName: string;
733
743
  quality: ChordQuality;
734
744
  start: number;
735
745
  end: number;
@@ -1005,21 +1015,22 @@ interface PitchCorrectOptions extends ValidateOptions {
1005
1015
  interface NoteStretchOptions {
1006
1016
  /** Note onset position in samples (selects the region). Default 0. */
1007
1017
  onsetSample?: number;
1008
- /** Note offset position in samples (selects the region). Default 0. */
1018
+ /** Note offset position in samples (selects the region). Defaults to the input length. */
1009
1019
  offsetSample?: number;
1010
- /** Stretch ratio (0.5 = double duration, 2.0 = half duration). Default 1. */
1020
+ /** Stretch ratio (0.5 = half duration, 2.0 = double duration). Default 1. */
1011
1021
  stretchRatio?: number;
1012
1022
  }
1013
1023
  /** Options for `noteMove`. */
1014
1024
  interface NoteMoveOptions {
1015
1025
  onsetSample?: number;
1026
+ /** Defaults to the input length. */
1016
1027
  offsetSample?: number;
1017
1028
  targetOnsetSample?: number;
1018
1029
  }
1019
1030
  /** How a `spectralEdit` region op modifies the masked bins. */
1020
1031
  type SpectralEditMode = 'gain' | 'attenuate' | 'mute' | 'heal';
1021
1032
  /** Analysis/synthesis window used by `spectralEdit`. */
1022
- type SpectralEditWindow = 'hann' | 'hamming' | 'blackman' | 'rectangular';
1033
+ type SpectralEditWindow = 'hann' | 'hamming' | 'blackman' | 'rectangular' | 'rect';
1023
1034
  /** One time x frequency rectangle edit op for `spectralEdit`. */
1024
1035
  interface SpectralRegionOp {
1025
1036
  /** Region time start (input samples); clamped to [0, length]. Default 0. */
@@ -1146,8 +1157,14 @@ interface PitchResult {
1146
1157
  */
1147
1158
  interface LufsResult {
1148
1159
  integratedLufs: number;
1160
+ /** Final complete 400 ms window, not Max-M. */
1149
1161
  momentaryLufs: number;
1162
+ /** Final complete 3 s window, not Max-S. */
1150
1163
  shortTermLufs: number;
1164
+ /** Maximum 400 ms window (EBU R128 Max-M). */
1165
+ maxMomentaryLufs: number;
1166
+ /** Maximum 3 s window (EBU R128 Max-S). */
1167
+ maxShortTermLufs: number;
1151
1168
  loudnessRange: number;
1152
1169
  }
1153
1170
  /**
@@ -1275,6 +1292,10 @@ declare function pitchShift(samples: Float32Array, sampleRate: number, semitones
1275
1292
  /**
1276
1293
  * Pitch-correct audio from a current MIDI note to a target MIDI note.
1277
1294
  *
1295
+ * Applies one constant, immediate transpose with no retune glide and preserves
1296
+ * the input buffer length. Use {@link pitchCorrectToMidiTimevarying} for a
1297
+ * caller-supplied pitch contour.
1298
+ *
1278
1299
  * @param samples - Audio samples (mono, float32)
1279
1300
  * @param sampleRate - Sample rate in Hz
1280
1301
  * @param currentMidi - Detected/current MIDI note number
@@ -1290,7 +1311,8 @@ declare function pitchCorrectToMidi(samples: Float32Array, sampleRate?: number,
1290
1311
  * the caller-supplied per-frame `f0Hz` contour and retunes every voiced frame
1291
1312
  * toward `targetMidi`, so vibrato/drift in the source is tracked rather than
1292
1313
  * flattened. `voiced` (non-zero = voiced) and `voicedProb` ([0,1]) are optional;
1293
- * omitting them treats every frame as voiced.
1314
+ * omitting them treats every frame as voiced. An `f0Hz` NaN is accepted only
1315
+ * when the corresponding `voiced` entry is zero, matching pYIN output.
1294
1316
  *
1295
1317
  * @param samples - Audio samples (mono, float32)
1296
1318
  * @param f0Hz - Per-frame measured F0 in Hz (one entry per analysis frame)
@@ -1310,7 +1332,8 @@ declare function pitchCorrectToMidiTimevarying(samples: Float32Array, f0Hz: Floa
1310
1332
  * Generalises {@link pitchCorrectToMidiTimevarying}: the same caller-supplied
1311
1333
  * per-frame `f0Hz` contour drives correction, but `options.mode` selects between
1312
1334
  * a fixed-MIDI target (`'midi'`, default) and scale quantisation (`'scale'`),
1313
- * and the retune knobs shape natural-vs-robotic correction.
1335
+ * and the retune knobs shape natural-vs-robotic correction. An `f0Hz` NaN is
1336
+ * accepted only for a frame marked unvoiced.
1314
1337
  *
1315
1338
  * @param samples - Audio samples (mono, float32)
1316
1339
  * @param f0Hz - Per-frame measured F0 in Hz (one entry per analysis frame)
@@ -1328,7 +1351,7 @@ declare function pitchCorrectTimevarying(samples: Float32Array, f0Hz: Float32Arr
1328
1351
  * @param sampleRate - Sample rate in Hz
1329
1352
  * @param onsetSample - Note onset position in samples
1330
1353
  * @param offsetSample - Note offset position in samples
1331
- * @param stretchRatio - Stretch ratio (0.5 = double duration, 2.0 = half duration)
1354
+ * @param stretchRatio - Stretch ratio (0.5 = half duration, 2.0 = double duration)
1332
1355
  * @returns Audio with the note region stretched
1333
1356
  */
1334
1357
  declare function noteStretch(request: NoteStretchRequest): Float32Array;
@@ -1341,7 +1364,7 @@ declare function noteMove(samples: Float32Array, sampleRate?: number, options?:
1341
1364
  *
1342
1365
  * @param samples - Audio samples (mono, float32)
1343
1366
  * @param sampleRate - Sample rate in Hz (default: 22050)
1344
- * @param targetDb - Target peak level in dB (default: 0 dB = full scale)
1367
+ * @param targetDb - Finite target at or below 0 dBFS (default: 0 dB = full scale)
1345
1368
  * @returns Normalized audio
1346
1369
  */
1347
1370
  declare function normalize(request: NormalizeRequest): Float32Array;
@@ -1621,6 +1644,8 @@ interface MasteringInsertParamInfo {
1621
1644
  id: number;
1622
1645
  /** Whether the param can be changed live from the audio thread. */
1623
1646
  rtSafe: boolean;
1647
+ /** Physical unit when the parameter is not unitless. */
1648
+ unit?: string;
1624
1649
  }
1625
1650
  /**
1626
1651
  * Returns the realtime-automatable parameter descriptors for an insert / FX
@@ -2651,7 +2676,11 @@ declare class Project {
2651
2676
  setMaxUndoDepth(depth: number): void;
2652
2677
  /** Replace a MIDI clip's entire event list. */
2653
2678
  setMidiEvents(clipId: number, events: ReadonlyArray<ProjectMidiEvent | readonly [number, number, number]>): void;
2654
- /** Import an in-memory SMF buffer; returns the first added clip id. */
2679
+ /**
2680
+ * Import an in-memory SMF buffer; returns the first added clip id.
2681
+ * Malformed or partially truncated tracks are rejected instead of installing
2682
+ * a silently shortened clip.
2683
+ */
2655
2684
  importSmf(data: Uint8Array): number;
2656
2685
  /** Export the project's tempo map + MIDI clips to an SMF byte buffer. */
2657
2686
  exportSmf(): Uint8Array;
@@ -2676,15 +2705,18 @@ declare class Project {
2676
2705
  setProgram(clipId: number, program: number, bank?: number): void;
2677
2706
  /** Set a MIDI clip's program / bank for one UMP group and channel. */
2678
2707
  setProgramOnChannel(clipId: number, group: number, channel: number, program: number, bank?: number): void;
2679
- /** Destructively bake a MIDI-FX chain into a clip's stored MIDI events. */
2708
+ /**
2709
+ * Destructively bake a MIDI-FX chain into all stored events. Large clips are
2710
+ * drained without truncation; failure leaves the original clip unchanged.
2711
+ */
2680
2712
  bakeMidiFx(clipId: number, configJson: string): void;
2681
2713
  /** Backward alias for {@link bakeMidiFx}. */
2682
2714
  setMidiFx(clipId: number, configJson: string): void;
2683
2715
  /**
2684
2716
  * Pre-flight check for hanging / unmatched notes in a MIDI clip: reports
2685
- * whether every note-on has a matching note-off (FIFO per channel+note).
2686
- * Useful before bouncing to catch a stuck note. Throws if `clipId` is unknown
2687
- * or not a MIDI clip.
2717
+ * whether every note-on in the exported half-open playback window has a
2718
+ * matching note-off (FIFO per group+channel+note). Useful before bouncing to
2719
+ * catch a stuck note. Throws if `clipId` is unknown or not a MIDI clip.
2688
2720
  */
2689
2721
  validateMidiNotes(clipId: number): ProjectNotePairValidation;
2690
2722
  /** Return ranked tempo-octave and detected-meter candidates without editing. */
@@ -3049,6 +3081,8 @@ declare class RealtimeEngine {
3049
3081
  * mapped into [minValue, maxValue] for `paramId`.
3050
3082
  */
3051
3083
  bindMidiCc(channel: number, controller: number, paramId: number, options?: MidiCcBindOptions): void;
3084
+ /** Bind a 7/14-bit CC, RPN, or NRPN descriptor to a live parameter. */
3085
+ bindMidiCcBinding(binding: ProjectMidiCcBinding): void;
3052
3086
  clearMidiCcBindings(): void;
3053
3087
  midiCcBindingCount(): number;
3054
3088
  /** Install/replace a live non-destructive MIDI-FX insert for one destination. */
@@ -3121,6 +3155,7 @@ declare class RealtimeEngine {
3121
3155
  */
3122
3156
  settleParameters(): void;
3123
3157
  seekPpq(ppq: number, renderFrame?: number): void;
3158
+ /** Set a finite tempo in the range (0, 100000] BPM. */
3124
3159
  setTempo(bpm: number): void;
3125
3160
  setTempoSegments(segments: readonly EngineTempoSegment[]): void;
3126
3161
  setTimeSignature(numerator: number, denominator: number): void;
@@ -3139,6 +3174,7 @@ declare class RealtimeEngine {
3139
3174
  marker(id: number): EngineMarker;
3140
3175
  seekMarker(markerId: number, renderFrame?: number): void;
3141
3176
  setLoopFromMarkers(startMarkerId: number, endMarkerId: number): void;
3177
+ /** Set a metronome config; click lengths are limited to one second. */
3142
3178
  setMetronome(config: EngineMetronomeConfig): void;
3143
3179
  metronome(): Required<EngineMetronomeConfig>;
3144
3180
  countInEndSample(startSample: number, bars: number): number;
@@ -3214,6 +3250,7 @@ declare class RealtimeEngine {
3214
3250
  armCapture(armed?: boolean): void;
3215
3251
  setCapturePunch(startSample: number, endSample: number, enabled?: boolean): void;
3216
3252
  setCaptureSource(source: EngineCaptureStatus['source']): void;
3253
+ /** Positive values delay capture relative to the punch window. */
3217
3254
  setRecordOffsetSamples(offsetSamples: number): void;
3218
3255
  setInputMonitor(enabled: boolean, gain?: number): void;
3219
3256
  resetCapture(): void;
@@ -3504,6 +3541,14 @@ interface PcenRequest {
3504
3541
  values: Float32Array;
3505
3542
  nBins: number;
3506
3543
  nFrames: number;
3544
+ sampleRate?: number;
3545
+ hopLength?: number;
3546
+ timeConstant?: number;
3547
+ gain?: number;
3548
+ bias?: number;
3549
+ power?: number;
3550
+ eps?: number;
3551
+ /** @deprecated Put PCEN fields directly on the request object. */
3507
3552
  options?: Record<string, number>;
3508
3553
  }
3509
3554
  interface TempogramRequest {
@@ -3695,6 +3740,9 @@ interface LufsRequest extends ValidateOptions {
3695
3740
  interface NnlsChromaRequest extends GuardedOptions$2 {
3696
3741
  samples: Float32Array;
3697
3742
  sampleRate?: number;
3743
+ enableStftBlend?: boolean;
3744
+ stftBlendWeight?: number;
3745
+ stftBlendNFft?: number;
3698
3746
  }
3699
3747
  /**
3700
3748
  * Compute NNLS (non-negative least squares) chromagram.
@@ -3704,7 +3752,7 @@ interface NnlsChromaRequest extends GuardedOptions$2 {
3704
3752
  * @returns NNLS chroma result
3705
3753
  */
3706
3754
  declare function nnlsChroma(request: NnlsChromaRequest): WasmNnlsChromaResult;
3707
- declare function nnlsChroma(samples: Float32Array, sampleRate?: number, options?: GuardedOptions$2): WasmNnlsChromaResult;
3755
+ declare function nnlsChroma(samples: Float32Array, sampleRate?: number, options?: Omit<NnlsChromaRequest, 'samples' | 'sampleRate'>): WasmNnlsChromaResult;
3708
3756
  /**
3709
3757
  * Compute the Constant-Q Transform magnitude.
3710
3758
  *
@@ -3753,7 +3801,8 @@ declare function hybridCqt(samples: Float32Array, sampleRate?: number, hopLength
3753
3801
  * @param fmin - Minimum frequency in Hz (default: 32.70319566257483, C1)
3754
3802
  * @param nBins - Number of frequency bins (default: 84)
3755
3803
  * @param binsPerOctave - Bins per octave (default: 12)
3756
- * @param gamma - Bandwidth offset; 0 is equivalent to CQT (default: 0)
3804
+ * @param gamma - Bandwidth offset; negative selects the automatic ERB-derived
3805
+ * value, while 0 is equivalent to CQT (default: -1)
3757
3806
  * @returns VQT magnitude result (same shape as CQT)
3758
3807
  */
3759
3808
  declare function vqt(request: VqtRequest): CqtResult;
@@ -3900,8 +3949,8 @@ declare function shortTermLufs(samples: Float32Array, sampleRate?: number, optio
3900
3949
  * @param hopLength - Hop length (default: 512)
3901
3950
  * @param fmin - Minimum frequency in Hz (default: 65)
3902
3951
  * @param fmax - Maximum frequency in Hz (default: 2093)
3903
- * @param threshold - YIN threshold (default: 0.3)
3904
- * @param fillNa - If true, return 0 for unvoiced f0 frames; otherwise keep NaN (default: false)
3952
+ * @param threshold - YIN threshold (default: 0.1)
3953
+ * @param fillNa - Retained for compatibility; YIN always returns a finite per-frame estimate.
3905
3954
  * @returns Pitch detection result
3906
3955
  */
3907
3956
  interface PitchYinRequest {
@@ -3925,7 +3974,7 @@ declare function pitchYin(samples: Float32Array, sampleRate?: number, frameLengt
3925
3974
  * @param hopLength - Hop length (default: 512)
3926
3975
  * @param fmin - Minimum frequency in Hz (default: 65)
3927
3976
  * @param fmax - Maximum frequency in Hz (default: 2093)
3928
- * @param threshold - YIN threshold (default: 0.3)
3977
+ * @param threshold - YIN threshold (default: 0.1)
3929
3978
  * @param fillNa - If true, return 0 for unvoiced f0 frames; otherwise keep NaN (default: false)
3930
3979
  * @returns Pitch detection result
3931
3980
  */
@@ -4106,7 +4155,7 @@ declare function remix(samples: Float32Array, intervals: Int32Array | ArrayLike<
4106
4155
  * Phase-vocoder time-scale modification (rate > 1 faster, < 1 slower).
4107
4156
  */
4108
4157
  declare function phaseVocoder(request: PhaseVocoderRequest): Float32Array;
4109
- declare function phaseVocoder(samples: Float32Array, rate: number, sampleRate?: number, nFft?: number, hopLength?: number): Float32Array;
4158
+ declare function phaseVocoder(samples: Float32Array, sampleRate: number, rate: number, nFft?: number, hopLength?: number): Float32Array;
4110
4159
  /**
4111
4160
  * HPSS into harmonic / percussive / residual signals.
4112
4161
  */
@@ -4200,6 +4249,7 @@ interface ChromaSpectrogramRequest extends GuardedOptions$1 {
4200
4249
  sampleRate?: number;
4201
4250
  hopLength?: number;
4202
4251
  nChroma?: number;
4252
+ binsPerOctave?: number;
4203
4253
  }
4204
4254
  interface MelSpectrogramRequest extends SpectrogramRequest {
4205
4255
  nMels?: number;
@@ -4216,6 +4266,8 @@ interface MfccToMelRequest extends GuardedOptions$1 {
4216
4266
  nMfcc: number;
4217
4267
  nFrames: number;
4218
4268
  nMels?: number;
4269
+ /** Lifter used by the forward MFCC transform; zero means no liftering. */
4270
+ lifter?: number;
4219
4271
  }
4220
4272
  /** Canonical request form for reconstruction from a Mel power spectrogram. */
4221
4273
  interface MelToStftRequest extends GuardedOptions$1 {
@@ -4298,7 +4350,7 @@ declare function stftDb(samples: Float32Array, sampleRate?: number, nFft?: numbe
4298
4350
  * @returns Chroma result
4299
4351
  */
4300
4352
  declare function chromaCens(request: ChromaSpectrogramRequest): ChromaResult;
4301
- declare function chromaCens(samples: Float32Array, sampleRate?: number, hopLength?: number, nChroma?: number, options?: GuardedOptions$1): ChromaResult;
4353
+ declare function chromaCens(samples: Float32Array, sampleRate?: number, hopLength?: number, nChroma?: number, binsPerOctave?: number, options?: GuardedOptions$1): ChromaResult;
4302
4354
  /**
4303
4355
  * Compute a constant-Q chromagram (librosa.feature.chroma_cqt).
4304
4356
  *
@@ -4309,7 +4361,7 @@ declare function chromaCens(samples: Float32Array, sampleRate?: number, hopLengt
4309
4361
  * @returns Chroma result
4310
4362
  */
4311
4363
  declare function chromaCqt(request: ChromaSpectrogramRequest): ChromaResult;
4312
- declare function chromaCqt(samples: Float32Array, sampleRate?: number, hopLength?: number, nChroma?: number, options?: GuardedOptions$1): ChromaResult;
4364
+ declare function chromaCqt(samples: Float32Array, sampleRate?: number, hopLength?: number, nChroma?: number, binsPerOctave?: number, options?: GuardedOptions$1): ChromaResult;
4313
4365
  /**
4314
4366
  * Compute low-frequency bass chroma.
4315
4367
  *
@@ -4399,7 +4451,7 @@ declare function melToAudio(melPower: Float32Array, nMels: number, nFrames: numb
4399
4451
  * @returns Mel power spectrogram result
4400
4452
  */
4401
4453
  declare function mfccToMel(request: MfccToMelRequest): MelPowerResult;
4402
- declare function mfccToMel(mfccCoefficients: Float32Array, nMfcc: number, nFrames: number, nMels?: number, options?: GuardedOptions$1): MelPowerResult;
4454
+ declare function mfccToMel(mfccCoefficients: Float32Array, nMfcc: number, nFrames: number, nMels?: number, lifter?: number, options?: GuardedOptions$1): MelPowerResult;
4403
4455
  /**
4404
4456
  * Reconstruct audio directly from MFCC coefficients via Griffin-Lim. Mirrors
4405
4457
  * `feature::mfcc_to_audio`.
@@ -4418,7 +4470,7 @@ declare function mfccToMel(mfccCoefficients: Float32Array, nMfcc: number, nFrame
4418
4470
  * @returns Reconstructed audio samples (mono, float32)
4419
4471
  */
4420
4472
  declare function mfccToAudio(request: MfccToAudioRequest): Float32Array;
4421
- declare function mfccToAudio(mfccCoefficients: Float32Array, nMfcc: number, nFrames: number, nMels?: number, sampleRate?: number, nFft?: number, hopLength?: number, fmin?: number, fmax?: number, nIter?: number, htk?: boolean, options?: GuardedOptions$1): Float32Array;
4473
+ declare function mfccToAudio(mfccCoefficients: Float32Array, nMfcc: number, nFrames: number, nMels?: number, sampleRate?: number, nFft?: number, hopLength?: number, fmin?: number, fmax?: number, nIter?: number, htk?: boolean, lifter?: number, options?: GuardedOptions$1): Float32Array;
4422
4474
  /**
4423
4475
  * Compute STFT chromagram (librosa.feature.chroma_stft).
4424
4476
  *
@@ -4494,7 +4546,9 @@ declare enum SonareEngineTelemetryError {
4494
4546
  SmoothedParameterCapacity = 13,
4495
4547
  CommandBacklogDeferred = 14,
4496
4548
  ClipPageUnderrun = 15,
4497
- InsertAutomationOverflow = 16
4549
+ InsertAutomationOverflow = 16,
4550
+ MidiClockOverflow = 17,
4551
+ MetronomeOverflow = 18
4498
4552
  }
4499
4553
  interface SonareMeterRingBuffer {
4500
4554
  sharedBuffer: SharedArrayBuffer;
@@ -4960,6 +5014,13 @@ declare function meteringPeakDb(request: MeteringSamplesRequest): number;
4960
5014
  declare function meteringPeakDb(samples: Float32Array, sampleRate?: number, options?: ValidateOptions): number;
4961
5015
  declare function meteringRmsDb(request: MeteringSamplesRequest): number;
4962
5016
  declare function meteringRmsDb(samples: Float32Array, sampleRate?: number, options?: ValidateOptions): number;
5017
+ interface MeteringSilenceRatioRequest extends MeteringSamplesRequest {
5018
+ thresholdDb?: number;
5019
+ frameLength?: number;
5020
+ hopLength?: number;
5021
+ }
5022
+ declare function meteringSilenceRatio(request: MeteringSilenceRatioRequest): number;
5023
+ declare function meteringSilenceRatio(samples: Float32Array, sampleRate?: number, thresholdDb?: number, frameLength?: number, hopLength?: number, options?: ValidateOptions): number;
4963
5024
  declare function meteringCrestFactorDb(request: MeteringSamplesRequest): number;
4964
5025
  declare function meteringCrestFactorDb(samples: Float32Array, sampleRate?: number, options?: ValidateOptions): number;
4965
5026
  declare function meteringDcOffset(request: MeteringSamplesRequest): number;
@@ -4979,7 +5040,7 @@ declare function meteringTruePeakDb(samples: Float32Array, sampleRate?: number,
4979
5040
  declare function meteringDetectClipping(request: MeteringDetectClippingRequest): ClippingReport;
4980
5041
  declare function meteringDetectClipping(samples: Float32Array, sampleRate?: number, options?: MeteringDetectClippingOptions): ClippingReport;
4981
5042
  /**
4982
- * Sliding-window dynamic range. Pass 0 for window/hop to use the library
5043
+ * Sliding-window dynamic range for mono audio. Pass 0 for window/hop to use the library
4983
5044
  * default (window=3 s, hop=1 s). The percentiles use a NEGATIVE sentinel for
4984
5045
  * "use the library default" (low=0.10, high=0.95) because 0 is a literal 0th
4985
5046
  * percentile; omitted percentiles therefore default to -1.
@@ -5079,7 +5140,7 @@ interface WaveformPeaksReport {
5079
5140
  bucketCount: number;
5080
5141
  samplesPerBucket: number;
5081
5142
  }
5082
- /** Pearson correlation in [-1, 1] between two equal-length channels. */
5143
+ /** Uncentered correlation (cosine similarity) in [-1, 1] between equal-length channels. */
5083
5144
  declare function meteringStereoCorrelation(request: MeteringStereoRequest): number;
5084
5145
  declare function meteringStereoCorrelation(left: Float32Array, right: Float32Array, sampleRate?: number, options?: ValidateOptions): number;
5085
5146
  /**
@@ -5124,7 +5185,7 @@ declare function meteringPhaseScope(left: Float32Array, right: Float32Array, sam
5124
5185
  declare function meteringPhaseScopeDecimated(request: MeteringStereoDecimatedRequest): PhaseScopeReport;
5125
5186
  declare function meteringPhaseScopeDecimated(left: Float32Array, right: Float32Array, sampleRate?: number, maxPoints?: number, options?: ValidateOptions): PhaseScopeReport;
5126
5187
  /**
5127
- * Welch-averaged magnitude / power / dB spectrum over the WHOLE signal (split
5188
+ * Welch-averaged magnitude / power / dB spectrum over the WHOLE mono signal (split
5128
5189
  * into Hann-windowed, 50%-overlapping `nFft`-length frames whose power spectra
5129
5190
  * are averaged). For a true single-frame snapshot, use
5130
5191
  * {@link meteringSpectrumFrame}.
@@ -5273,8 +5334,26 @@ declare function chordFunctionalAnalysis(samples: Float32Array, keyRoot: PitchCl
5273
5334
  * the UI responsive for long inputs, drive this from a Web Worker and use
5274
5335
  * {@link analyzeWithProgress} to report progress.
5275
5336
  */
5276
- declare function analyze(request: SamplesRequest): AnalysisResult;
5277
- declare function analyze(samples: Float32Array, sampleRate?: number, options?: GuardedOptions): AnalysisResult;
5337
+ interface MusicAnalyzeOptions {
5338
+ nFft?: number;
5339
+ hopLength?: number;
5340
+ bpmMin?: number;
5341
+ bpmMax?: number;
5342
+ startBpm?: number;
5343
+ useTriadsOnly?: boolean;
5344
+ useHpss?: boolean;
5345
+ chromaHighpassHz?: number;
5346
+ useBassWeighted?: boolean;
5347
+ chromaHopMultiplier?: number;
5348
+ useChordHmm?: boolean;
5349
+ useChordKeyContext?: boolean;
5350
+ chordHmmBeamWidth?: number;
5351
+ detectChordInversions?: boolean;
5352
+ }
5353
+ interface MusicAnalyzeRequest extends SamplesRequest, MusicAnalyzeOptions {
5354
+ }
5355
+ declare function analyze(request: MusicAnalyzeRequest): AnalysisResult;
5356
+ declare function analyze(samples: Float32Array, sampleRate?: number, options?: GuardedOptions & MusicAnalyzeOptions): AnalysisResult;
5278
5357
  declare function analyzeImpulseResponse(request: AnalyzeImpulseResponseRequest): AcousticResult;
5279
5358
  declare function analyzeImpulseResponse(samples: Float32Array, sampleRate?: number, nOctaveBands?: number): AcousticResult;
5280
5359
  declare function detectAcoustic(request: DetectAcousticRequest): AcousticResult;
@@ -5754,7 +5833,10 @@ declare class Mixer {
5754
5833
  * @param blockSize - Maximum block size per {@link processStereo} call (default: 512)
5755
5834
  */
5756
5835
  static fromSceneJson(json: string, sampleRate?: number, blockSize?: number): Mixer;
5757
- /** Rebuild and compile the routing graph from the current scene topology. */
5836
+ /**
5837
+ * Rebuild and compile the routing graph without resetting its absolute
5838
+ * automation sample position or queued strip automation.
5839
+ */
5758
5840
  compile(): void;
5759
5841
  /**
5760
5842
  * Non-fatal warnings captured when this mixer was built from scene JSON: one
@@ -5828,6 +5910,8 @@ declare class Mixer {
5828
5910
  addVcaGroup(id: string, gainDb?: number, members?: string[]): void;
5829
5911
  /** Set an existing VCA group's gain in dB. */
5830
5912
  setVcaGroupGainDb(id: string, gainDb: number): void;
5913
+ /** Replace an existing VCA group's strip membership. */
5914
+ setVcaGroupMembers(id: string, members: string[]): void;
5831
5915
  /** Remove a VCA group by id. */
5832
5916
  removeVcaGroup(id: string): void;
5833
5917
  /** Number of VCA groups in the mixer topology. */
@@ -5923,6 +6007,8 @@ declare class Mixer {
5923
6007
  * the tap-less post-fader strip meter is read.
5924
6008
  */
5925
6009
  stripMeter(stripIndex: number, tap?: MeterTap | number): MixMeterSnapshot;
6010
+ /** Read the post-insert meter for a compiled bus, including master. */
6011
+ busMeter(busId: string): MixMeterSnapshot;
5926
6012
  /**
5927
6013
  * Schedule sample-accurate fader automation on a strip.
5928
6014
  *
@@ -6407,4 +6493,4 @@ declare function voiceCharacterPresetId(preset: VoicePresetId | number): string
6407
6493
  */
6408
6494
  declare function realtimeVoiceChangerPresetConfig(preset: VoicePresetId | number): RealtimeVoiceChangerPodConfig | null;
6409
6495
 
6410
- export { type AcousticOptions, type AcousticResult, type AnalysisResult, type AnalyzeBpmOptions, type AnalyzeBpmRequest, type AnalyzeDynamicsOptions, type AnalyzeDynamicsRequest, type AnalyzeImpulseResponseRequest, type AnalyzeMelodyRequest, type AnalyzeRhythmOptions, type AnalyzeRhythmRequest, type AnalyzeSectionsOptions, type AnalyzeSectionsRequest, type AnalyzeTimbreOptions, type AnalyzeTimbreRequest, type AnalyzeWithProgressRequest, type AnalyzerStats, Audio, type AutomationCurve, type BarChord, type Beat, type BindMicrophoneInputOptions, type BindWebMidiOptions, type BpmAnalysisResult, type BpmCandidate, type BrowserAudioDecodeOptions, type BuiltinSynthBinding, type BuiltinSynthConfig, type BuiltinSynthWaveform, type Chord, type ChordAnalysisResult, type ChordChange, type ChordDetectionOptions, type ChordFunctionalAnalysisRequest, ChordQuality, type ChromaResult, type ChromaSpectrogramRequest, type ClipPageRequest, type ClipPageStreamSource, ClipPageStreamer, type ClipPageStreamerEngine, type ClipPageStreamerOptions, type ClippingRegion, type ClippingReport, type CompressorDetector, type CompressorOptions, type CqtRequest, type CqtResult, type CqtToAudioRequest, type CyclicTempogramRequest, type DbConversionRequest, type DeclickOptions, type DeclipOptions, type DecomposeRequest, type DecomposeResult, type DecomposeWithInitRequest, type DecrackleMode, type DecrackleOptions, type DehumOptions, type DenoiseClassicalMode, type DenoiseClassicalNoiseEstimator, type DenoiseClassicalOptions, type DereverbClassicalOptions, type DetectAcousticRequest, type DetectChordsRequest, type DetectKeyRequest, type DynamicRangeReport, type Dynamics, type DynamicsAnalysisResult, type DynamicsResult, EXPECTED_ENGINE_ABI_VERSION, EXPECTED_PROJECT_ABI_VERSION, type Ebur128LoudnessRangeRequest, type EmphasisRequest, type EngineAutomationPoint, type EngineBounceOptions, type EngineBounceResult, type EngineBus, type EngineCapabilities, type EngineCaptureStatus, type EngineClip, type EngineFreezeOptions, type EngineFreezeResult, type EngineGraphSpec, type EngineMarker, type EngineMeterTelemetry, type EngineMeterTelemetryWide, type EngineMetronomeConfig, type EngineMidiClipSchedule, type EngineMidiEvent, type EngineParameterInfo, type EngineScopeTelemetry, type EngineTelemetry, type EngineTempoSegment, type EngineTimeSignatureSegment, type EngineTrackLane, type EngineTrackSend, type EngineTransportState, type EqBand, type EqBandPhase, type EqBandType, type EqCoeffMode, type EqMatchOptions, type EqSpectrumSnapshot, type EqStereoPlacement, ErrorCode, type EstimateRoomRequest, type EstimateTuningRequest, type ExternalMidiEvent, type FixFramesRequest, type FixLengthRequest, type FourierTempogramRequest, type FrameBuffer, type FrameSignalRequest, type GateOptions, type GoniometerPoint, type HarmonicRequest, type HpssRequest, type HpssResult, type HpssWithResidualRequest, type HpssWithResidualResult, type Key, type KeyCandidate, type KeyDetectionOptions, KeyProfile, type KeyProfileName, type LufsInterleavedRequest, type LufsRequest, type LufsResult, MarkerKind, type MasterAudioRequest, type MasterAudioStereoRequest, type MasteringChainConfig, type MasteringChainRequest, type MasteringChainResult, type MasteringChainStereoRequest, type MasteringChainStereoResult, type MasteringChannelPolicy, type MasteringDynamicsCompressorRequest, type MasteringDynamicsGateRequest, type MasteringDynamicsTransientShaperRequest, type MasteringInsertParamInfo, type MasteringOptions, type MasteringPairAnalyzeRequest, type MasteringPairProcessRequest, type MasteringPreset, type MasteringProcessRequest, type MasteringProcessStereoRequest, type MasteringProcessorCatalogEntry, type MasteringProcessorParams, type MasteringRepairDeclickRequest, type MasteringRepairDeclipRequest, type MasteringRepairDecrackleRequest, type MasteringRepairDehumRequest, type MasteringRepairDenoiseClassicalRequest, type MasteringRepairDereverbClassicalRequest, type MasteringRepairTrimSilenceRequest, type MasteringRequest, type MasteringResult, type MasteringSamplesParamsRequest, type MasteringStereoAnalyzeRequest, type MasteringStereoChainResult, type MasteringStereoResult, type MasteringStreamingPreviewRequest, type Matrix2dResult, type MelPowerResult, type MelSpectrogramRequest, type MelSpectrogramResult, type MelToAudioRequest, type MelToStftRequest, type MelodyOptions, type MelodyPoint, type MelodyResult, type MeterTap, type MeteringDetectClippingOptions, type MeteringDetectClippingRequest, type MeteringDynamicRangeOptions, type MeteringDynamicRangeRequest, type MeteringSamplesRequest, type MeteringSpectrumFrameRequest, type MeteringSpectrumRequest, type MeteringStereoDecimatedRequest, type MeteringStereoRequest, type MeteringTruePeakRequest, type MfccRequest, type MfccResult, type MfccToAudioRequest, type MfccToMelRequest, type MicrophoneInputBinding, type MidiCcBindOptions, type MidiCcLearnOptions, type MixMeterSnapshot, type MixOptions, type MixResult, type MixStereoRequest, Mixer, type MixerProcessResult, type MixerRealtimeBuffer, Mode, type NnFilterRequest, type NnlsChromaRequest, type NormalizeRequest, type NoteMoveRequest, type NoteStretchOptions, type NoteStretchRequest, type OnsetEnvelopeRequest, type OnsetStrengthMultiRequest, type OpfsClipPageProviderBinding, type OpfsClipPageProviderOptions, type OpfsClipStream, type OpfsClipStreamOptions, type PadCenterRequest, type PairAnalysis, type PairProcessor, type PanLaw, type PanMode, type PatternScore, type PcenRequest, type PeakPickRequest, type PercussiveRequest, type PhaseScopeReport, type PhaseVocoderRequest, PitchClass as Pitch, PitchClass, type PitchCorrectOptions, type PitchCorrectTimevaryingRequest, type PitchCorrectToMidiRequest, type PitchCorrectToMidiTimevaryingRequest, type PitchPyinRequest, type PitchResult, type PitchShiftRequest, type PitchTuningRequest, type PitchYinRequest, type PlpRequest, type PolyFeaturesRequest, type ProgressiveEstimate, Project, type ProjectAssistSidecar, type ProjectAutomationCurve, type ProjectAutomationLaneDesc, type ProjectAutomationPoint, type ProjectBounceOptions, type ProjectChordSymbol, type ProjectClipCompSegment, type ProjectClipDesc, type ProjectClipFade, type ProjectClipTake, type ProjectCompileResult, type ProjectFadeCurve, type ProjectKeySegment, type ProjectLoopMode, type ProjectLoopRecordingDesc, type ProjectLoopRecordingResult, type ProjectMarker, type ProjectMidiClipResult, type ProjectMidiEvent, type ProjectNotePairValidation, type ProjectTrackDesc, type ProjectTrackKind, type ProjectWarpAnchor, type ProjectWarpMapDesc, RealtimeEngine, RealtimeVoiceChanger, type RealtimeVoiceChangerConfigInput, type RealtimeVoiceChangerInterleavedBuffer, type RealtimeVoiceChangerMonoBuffer, type RealtimeVoiceChangerPlanarBuffer, type RealtimeVoiceChangerPodConfig, type RemixRequest, type ResampleRequest, type RhythmAnalysisResult, type RhythmFeatures, type RirResult, type RirSynthOptions, type RoomEstimateOptions, type RoomEstimateResult, type RoomGeometryOptions, type RoomMorphOptions, type RoomMorphRequest, SYNTH_BODY_TYPES, SYNTH_ENGINE_MODES, SYNTH_FILTER_MODELS, SYNTH_FILTER_OUTPUTS, SYNTH_MOD_DESTINATIONS, SYNTH_MOD_SOURCES, SYNTH_OSC_WAVEFORMS, type SamplesRequest, type Section, SectionType, type SendTiming, type Sf2InstrumentConfig, type Sf2ProgramStatus, type SilenceRequest, type SoloProcessor, SonareError, type SourceBackend, type SpectralContrastRequest, type SpectralEditMode, type SpectralEditOptions, type SpectralEditRequest, type SpectralEditWindow, type SpectralFrameRequest, type SpectralRegionOp, type SpectralRolloffRequest, type SpectrogramRequest, type SpectrumOptions, type SpectrumReport, type StageGainReduction, type StereoAnalysis, type StftPowerResult, type StftResult, StreamAnalyzer, type StreamConfig, type StreamConfigDefaults, type StreamFramesI16, type StreamFramesU8, type StreamQuantizeConfig, StreamingEqualizer, type StreamingEqualizerConfig, StreamingMasteringChain, type StreamingMasteringChainConfig, type StreamingPlatform, StreamingRetune, type StreamingRetuneConfig, type SynthBodyType, type SynthEngineMode, type SynthEnumTables, type SynthFilterModel, type SynthFilterOutput, type SynthModDestination, type SynthModRouting, type SynthModSource, type SynthOscWaveform, type SynthPatch, type TempogramMode, type TempogramRatioRequest, type TempogramRequest, type Timbre, type TimbreAnalysisResult, type TimbreFrame, type TimeSignature, type TimeStretchRequest, type TonnetzRequest, type TransientShaperOptions, type TrimRequest, type TrimSilenceMode, type TrimSilenceOptions, type ValidateOptions, type VectorNormalizeRequest, type VectorscopeReport, type VoiceChangeOptions, type VoiceChangeRealtimeOptions, type VoiceChangeRealtimeRequest, type VoiceChangeRequest, type VoicePresetId, type VqtRequest, type VqtToAudioRequest, type WaveformPeakPyramidOptions, type WaveformPeakPyramidRequest, type WaveformPeaksOptions, type WaveformPeaksReport, type WaveformPeaksRequest, type WebMidiBinding, type WebMidiCcBinding, type WebMidiInputInfo, type ZeroCrossingRateRequest, type ZeroCrossingsRequest, abiVersion, amplitudeToDb, analyze, analyzeBpm, analyzeDynamics, analyzeImpulseResponse, analyzeMelody, analyzeRhythm, analyzeSections, analyzeTimbre, analyzeWithProgress, attachOpfsClipStream, bassChroma, bindMicrophoneInput, bindWebMidi, chordFunctionalAnalysis, chroma, chromaCens, chromaCqt, cqt, cqtToAudio, createOpfsClipPageProvider, createOpfsClipPageWorker, cyclicTempogram, dbToAmplitude, dbToPower, decompose, decomposeWithInit, deemphasis, detectAcoustic, detectBeats, detectBpm, detectChords, detectDownbeats, detectKey, detectKeyCandidates, detectOnsets, ebur128LoudnessRange, engineAbiVersion, engineCapabilities, estimateRoom, estimateTuning, fixFrames, fixLength, fourierTempogram, frameSignal, framesToSamples, framesToTime, harmonic, hasFfmpegSupport, hpss, hpssWithResidual, hybridCqt, hzToMel, hzToMidi, hzToNote, init, isInitialized, isSonareError, isWebMidiAvailable, lufs, lufsInterleaved, masterAudio, masterAudioStereo, masterAudioStereoWithProgress, masterAudioWithProgress, mastering, masteringAssistantSuggest, masteringAudioProfile, masteringChain, masteringChainStereo, masteringChainStereoWithProgress, masteringChainWithProgress, masteringDynamicsCompressor, masteringDynamicsGate, masteringDynamicsTransientShaper, masteringInsertNames, masteringInsertParamInfo, masteringInsertParamNames, masteringPairAnalysisNames, masteringPairAnalyze, masteringPairProcess, masteringPairProcessorNames, masteringPresetNames, masteringProcess, masteringProcessStereo, masteringProcessorCatalog, masteringProcessorNames, masteringRepairDeclick, masteringRepairDeclip, masteringRepairDecrackle, masteringRepairDehum, masteringRepairDenoiseClassical, masteringRepairDereverbClassical, masteringRepairTrimSilence, masteringStereoAnalysisNames, masteringStereoAnalyze, masteringStreamingPreview, melSpectrogram, melToAudio, melToHz, melToStft, meteringCrestFactorDb, meteringDcOffset, meteringDetectClipping, meteringDynamicRange, meteringPeakDb, meteringPhaseScope, meteringPhaseScopeDecimated, meteringRmsDb, meteringSpectrum, meteringSpectrumFrame, meteringStereoCorrelation, meteringStereoWidth, meteringTruePeakDb, meteringVectorscope, meteringVectorscopeDecimated, mfcc, mfccToAudio, mfccToMel, midiToHz, mixStereo, mixingScenePresetJson, mixingScenePresetNames, momentaryLufs, nnFilter, nnlsChroma, normalize, noteMove, noteStretch, noteToHz, onsetEnvelope, onsetStrengthMulti, opfsClipPageWorkerSource, padCenter, pcen, peakPick, percussive, phaseVocoder, pitchCorrectTimevarying, pitchCorrectToMidi, pitchCorrectToMidiTimevarying, pitchPyin, pitchShift, pitchTuning, pitchYin, plp, polyFeatures, powerToDb, preemphasis, projectAbiVersion, pseudoCqt, realtimeVoiceChangerPresetConfig, realtimeVoiceChangerPresetJson, realtimeVoiceChangerPresetNames, remix, resample, rmsEnergy, roomMorph, samplesToFrames, scaleCorrectionSemitones, scalePitchClassEnabled, scaleQuantizeMidi, shortTermLufs, spectralBandwidth, spectralCentroid, spectralContrast, spectralEdit, spectralFlatness, spectralRolloff, splitSilence, stft, stftDb, streamAnalyzerConfigDefaults, synthEnumTables, synthPresetNames, synthPresetPatch, synthesizeRir, tempogram, tempogramRatio, timeStretch, timeToFrames, tonnetz, trim, trimSilence, validateRealtimeVoiceChangerPresetJson, vectorNormalize, version, voiceChange, voiceChangeRealtime, voiceChangerAbiVersion, voiceCharacterPresetId, vqt, vqtToAudio, waveformPeakPyramid, waveformPeaks, zeroCrossingRate, zeroCrossings };
6496
+ export { type AcousticOptions, type AcousticResult, type AnalysisResult, type AnalyzeBpmOptions, type AnalyzeBpmRequest, type AnalyzeDynamicsOptions, type AnalyzeDynamicsRequest, type AnalyzeImpulseResponseRequest, type AnalyzeMelodyRequest, type AnalyzeRhythmOptions, type AnalyzeRhythmRequest, type AnalyzeSectionsOptions, type AnalyzeSectionsRequest, type AnalyzeTimbreOptions, type AnalyzeTimbreRequest, type AnalyzeWithProgressRequest, type AnalyzerStats, Audio, type AutomationCurve, type BarChord, type Beat, type BindMicrophoneInputOptions, type BindWebMidiOptions, type BpmAnalysisResult, type BpmCandidate, type BrowserAudioDecodeOptions, type BuiltinSynthBinding, type BuiltinSynthConfig, type BuiltinSynthWaveform, type Chord, type ChordAnalysisResult, type ChordChange, type ChordDetectionOptions, type ChordFunctionalAnalysisRequest, ChordQuality, type ChromaResult, type ChromaSpectrogramRequest, type ClipPageRequest, type ClipPageStreamSource, ClipPageStreamer, type ClipPageStreamerEngine, type ClipPageStreamerOptions, type ClippingRegion, type ClippingReport, type CompressorDetector, type CompressorOptions, type CqtRequest, type CqtResult, type CqtToAudioRequest, type CyclicTempogramRequest, type DbConversionRequest, type DeclickOptions, type DeclipOptions, type DecomposeRequest, type DecomposeResult, type DecomposeWithInitRequest, type DecrackleMode, type DecrackleOptions, type DehumOptions, type DenoiseClassicalMode, type DenoiseClassicalNoiseEstimator, type DenoiseClassicalOptions, type DereverbClassicalOptions, type DetectAcousticRequest, type DetectChordsRequest, type DetectKeyRequest, type DynamicRangeReport, type Dynamics, type DynamicsAnalysisResult, type DynamicsResult, EXPECTED_ENGINE_ABI_VERSION, EXPECTED_PROJECT_ABI_VERSION, type Ebur128LoudnessRangeRequest, type EmphasisRequest, type EngineAutomationPoint, type EngineBounceOptions, type EngineBounceResult, type EngineBus, type EngineCapabilities, type EngineCaptureStatus, type EngineClip, type EngineFreezeOptions, type EngineFreezeResult, type EngineGraphSpec, type EngineMarker, type EngineMeterTelemetry, type EngineMeterTelemetryWide, type EngineMetronomeConfig, type EngineMidiClipSchedule, type EngineMidiEvent, type EngineParameterInfo, type EngineScopeTelemetry, type EngineTelemetry, type EngineTempoSegment, type EngineTimeSignatureSegment, type EngineTrackLane, type EngineTrackSend, type EngineTransportState, type EqBand, type EqBandPhase, type EqBandType, type EqCoeffMode, type EqMatchOptions, type EqSpectrumSnapshot, type EqStereoPlacement, ErrorCode, type EstimateRoomRequest, type EstimateTuningRequest, type ExternalMidiEvent, type FixFramesRequest, type FixLengthRequest, type FourierTempogramRequest, type FrameBuffer, type FrameSignalRequest, type GateOptions, type GoniometerPoint, type HarmonicRequest, type HpssRequest, type HpssResult, type HpssWithResidualRequest, type HpssWithResidualResult, type Key, type KeyCandidate, type KeyDetectionOptions, KeyProfile, type KeyProfileName, type LufsInterleavedRequest, type LufsRequest, type LufsResult, MarkerKind, type MasterAudioRequest, type MasterAudioStereoRequest, type MasteringChainConfig, type MasteringChainRequest, type MasteringChainResult, type MasteringChainStereoRequest, type MasteringChainStereoResult, type MasteringChannelPolicy, type MasteringDynamicsCompressorRequest, type MasteringDynamicsGateRequest, type MasteringDynamicsTransientShaperRequest, type MasteringInsertParamInfo, type MasteringOptions, type MasteringPairAnalyzeRequest, type MasteringPairProcessRequest, type MasteringPreset, type MasteringProcessRequest, type MasteringProcessStereoRequest, type MasteringProcessorCatalogEntry, type MasteringProcessorParams, type MasteringRepairDeclickRequest, type MasteringRepairDeclipRequest, type MasteringRepairDecrackleRequest, type MasteringRepairDehumRequest, type MasteringRepairDenoiseClassicalRequest, type MasteringRepairDereverbClassicalRequest, type MasteringRepairTrimSilenceRequest, type MasteringRequest, type MasteringResult, type MasteringSamplesParamsRequest, type MasteringStereoAnalyzeRequest, type MasteringStereoChainResult, type MasteringStereoResult, type MasteringStreamingPreviewRequest, type Matrix2dResult, type MelPowerResult, type MelSpectrogramRequest, type MelSpectrogramResult, type MelToAudioRequest, type MelToStftRequest, type MelodyOptions, type MelodyPoint, type MelodyResult, type MeterTap, type MeteringDetectClippingOptions, type MeteringDetectClippingRequest, type MeteringDynamicRangeOptions, type MeteringDynamicRangeRequest, type MeteringSamplesRequest, type MeteringSilenceRatioRequest, type MeteringSpectrumFrameRequest, type MeteringSpectrumRequest, type MeteringStereoDecimatedRequest, type MeteringStereoRequest, type MeteringTruePeakRequest, type MfccRequest, type MfccResult, type MfccToAudioRequest, type MfccToMelRequest, type MicrophoneInputBinding, type MidiCcBindOptions, type MidiCcLearnOptions, type MixMeterSnapshot, type MixOptions, type MixResult, type MixStereoRequest, Mixer, type MixerProcessResult, type MixerRealtimeBuffer, Mode, type MusicAnalyzeRequest, type NnFilterRequest, type NnlsChromaRequest, type NormalizeRequest, type NoteMoveRequest, type NoteStretchOptions, type NoteStretchRequest, type OnsetEnvelopeRequest, type OnsetStrengthMultiRequest, type OpfsClipPageProviderBinding, type OpfsClipPageProviderOptions, type OpfsClipStream, type OpfsClipStreamOptions, type PadCenterRequest, type PairAnalysis, type PairProcessor, type PanLaw, type PanMode, type PatternScore, type PcenRequest, type PeakPickRequest, type PercussiveRequest, type PhaseScopeReport, type PhaseVocoderRequest, PitchClass as Pitch, PitchClass, type PitchCorrectOptions, type PitchCorrectTimevaryingRequest, type PitchCorrectToMidiRequest, type PitchCorrectToMidiTimevaryingRequest, type PitchPyinRequest, type PitchResult, type PitchShiftRequest, type PitchTuningRequest, type PitchYinRequest, type PlpRequest, type PolyFeaturesRequest, type ProgressiveEstimate, Project, type ProjectAssistSidecar, type ProjectAutomationCurve, type ProjectAutomationLaneDesc, type ProjectAutomationPoint, type ProjectBounceOptions, type ProjectChordSymbol, type ProjectClipCompSegment, type ProjectClipDesc, type ProjectClipFade, type ProjectClipTake, type ProjectCompileResult, type ProjectFadeCurve, type ProjectKeySegment, type ProjectLoopMode, type ProjectLoopRecordingDesc, type ProjectLoopRecordingResult, type ProjectMarker, type ProjectMidiClipResult, type ProjectMidiEvent, type ProjectNotePairValidation, type ProjectTrackDesc, type ProjectTrackKind, type ProjectWarpAnchor, type ProjectWarpMapDesc, RealtimeEngine, RealtimeVoiceChanger, type RealtimeVoiceChangerConfigInput, type RealtimeVoiceChangerInterleavedBuffer, type RealtimeVoiceChangerMonoBuffer, type RealtimeVoiceChangerPlanarBuffer, type RealtimeVoiceChangerPodConfig, type RemixRequest, type ResampleRequest, type RhythmAnalysisResult, type RhythmFeatures, type RirResult, type RirSynthOptions, type RoomEstimateOptions, type RoomEstimateResult, type RoomGeometryOptions, type RoomMorphOptions, type RoomMorphRequest, SYNTH_BODY_TYPES, SYNTH_ENGINE_MODES, SYNTH_FILTER_MODELS, SYNTH_FILTER_OUTPUTS, SYNTH_MOD_DESTINATIONS, SYNTH_MOD_SOURCES, SYNTH_OSC_WAVEFORMS, type SamplesRequest, type Section, SectionType, type SendTiming, type Sf2InstrumentConfig, type Sf2ProgramStatus, type SilenceRequest, type SoloProcessor, SonareError, type SourceBackend, type SpectralContrastRequest, type SpectralEditMode, type SpectralEditOptions, type SpectralEditRequest, type SpectralEditWindow, type SpectralFrameRequest, type SpectralRegionOp, type SpectralRolloffRequest, type SpectrogramRequest, type SpectrumOptions, type SpectrumReport, type StageGainReduction, type StereoAnalysis, type StftPowerResult, type StftResult, StreamAnalyzer, type StreamConfig, type StreamConfigDefaults, type StreamFramesI16, type StreamFramesU8, type StreamQuantizeConfig, StreamingEqualizer, type StreamingEqualizerConfig, StreamingMasteringChain, type StreamingMasteringChainConfig, type StreamingPlatform, StreamingRetune, type StreamingRetuneConfig, type SynthBodyType, type SynthEngineMode, type SynthEnumTables, type SynthFilterModel, type SynthFilterOutput, type SynthModDestination, type SynthModRouting, type SynthModSource, type SynthOscWaveform, type SynthPatch, type TempogramMode, type TempogramRatioRequest, type TempogramRequest, type Timbre, type TimbreAnalysisResult, type TimbreFrame, type TimeSignature, type TimeStretchRequest, type TonnetzRequest, type TransientShaperOptions, type TrimRequest, type TrimSilenceMode, type TrimSilenceOptions, type ValidateOptions, type VectorNormalizeRequest, type VectorscopeReport, type VoiceChangeOptions, type VoiceChangeRealtimeOptions, type VoiceChangeRealtimeRequest, type VoiceChangeRequest, type VoicePresetId, type VqtRequest, type VqtToAudioRequest, type WaveformPeakPyramidOptions, type WaveformPeakPyramidRequest, type WaveformPeaksOptions, type WaveformPeaksReport, type WaveformPeaksRequest, type WebMidiBinding, type WebMidiCcBinding, type WebMidiInputInfo, type ZeroCrossingRateRequest, type ZeroCrossingsRequest, abiVersion, amplitudeToDb, analyze, analyzeBpm, analyzeDynamics, analyzeImpulseResponse, analyzeMelody, analyzeRhythm, analyzeSections, analyzeTimbre, analyzeWithProgress, attachOpfsClipStream, bassChroma, bindMicrophoneInput, bindWebMidi, chordFunctionalAnalysis, chroma, chromaCens, chromaCqt, cqt, cqtToAudio, createOpfsClipPageProvider, createOpfsClipPageWorker, cyclicTempogram, dbToAmplitude, dbToPower, decompose, decomposeWithInit, deemphasis, detectAcoustic, detectBeats, detectBpm, detectChords, detectDownbeats, detectKey, detectKeyCandidates, detectOnsets, ebur128LoudnessRange, engineAbiVersion, engineCapabilities, estimateRoom, estimateTuning, fixFrames, fixLength, fourierTempogram, frameSignal, framesToSamples, framesToTime, harmonic, hasFfmpegSupport, hpss, hpssWithResidual, hybridCqt, hzToMel, hzToMidi, hzToNote, init, isInitialized, isSonareError, isWebMidiAvailable, lufs, lufsInterleaved, masterAudio, masterAudioStereo, masterAudioStereoWithProgress, masterAudioWithProgress, mastering, masteringAssistantSuggest, masteringAudioProfile, masteringChain, masteringChainStereo, masteringChainStereoWithProgress, masteringChainWithProgress, masteringDynamicsCompressor, masteringDynamicsGate, masteringDynamicsTransientShaper, masteringInsertNames, masteringInsertParamInfo, masteringInsertParamNames, masteringPairAnalysisNames, masteringPairAnalyze, masteringPairProcess, masteringPairProcessorNames, masteringPresetNames, masteringProcess, masteringProcessStereo, masteringProcessorCatalog, masteringProcessorNames, masteringRepairDeclick, masteringRepairDeclip, masteringRepairDecrackle, masteringRepairDehum, masteringRepairDenoiseClassical, masteringRepairDereverbClassical, masteringRepairTrimSilence, masteringStereoAnalysisNames, masteringStereoAnalyze, masteringStreamingPreview, melSpectrogram, melToAudio, melToHz, melToStft, meteringCrestFactorDb, meteringDcOffset, meteringDetectClipping, meteringDynamicRange, meteringPeakDb, meteringPhaseScope, meteringPhaseScopeDecimated, meteringRmsDb, meteringSilenceRatio, meteringSpectrum, meteringSpectrumFrame, meteringStereoCorrelation, meteringStereoWidth, meteringTruePeakDb, meteringVectorscope, meteringVectorscopeDecimated, mfcc, mfccToAudio, mfccToMel, midiToHz, mixStereo, mixingScenePresetJson, mixingScenePresetNames, momentaryLufs, nnFilter, nnlsChroma, normalize, noteMove, noteStretch, noteToHz, onsetEnvelope, onsetStrengthMulti, opfsClipPageWorkerSource, padCenter, pcen, peakPick, percussive, phaseVocoder, pitchCorrectTimevarying, pitchCorrectToMidi, pitchCorrectToMidiTimevarying, pitchPyin, pitchShift, pitchTuning, pitchYin, plp, polyFeatures, powerToDb, preemphasis, projectAbiVersion, pseudoCqt, realtimeVoiceChangerPresetConfig, realtimeVoiceChangerPresetJson, realtimeVoiceChangerPresetNames, remix, resample, rmsEnergy, roomMorph, samplesToFrames, scaleCorrectionSemitones, scalePitchClassEnabled, scaleQuantizeMidi, shortTermLufs, spectralBandwidth, spectralCentroid, spectralContrast, spectralEdit, spectralFlatness, spectralRolloff, splitSilence, stft, stftDb, streamAnalyzerConfigDefaults, synthEnumTables, synthPresetNames, synthPresetPatch, synthesizeRir, tempogram, tempogramRatio, timeStretch, timeToFrames, tonnetz, trim, trimSilence, validateRealtimeVoiceChangerPresetJson, vectorNormalize, version, voiceChange, voiceChangeRealtime, voiceChangerAbiVersion, voiceCharacterPresetId, vqt, vqtToAudio, waveformPeakPyramid, waveformPeaks, zeroCrossingRate, zeroCrossings };