@libraz/libsonare 1.6.0 → 1.7.1

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.
Files changed (53) hide show
  1. package/README.md +2 -2
  2. package/dist/analysis.d.ts +139 -11
  3. package/dist/analysis.js +162 -42
  4. package/dist/analysis.js.map +1 -1
  5. package/dist/index.d.ts +211 -39
  6. package/dist/index.js +501 -142
  7. package/dist/index.js.map +1 -1
  8. package/dist/schemas/realtime-voice-changer-preset.schema.json +2 -2
  9. package/dist/sonare-analysis.js +1 -1
  10. package/dist/sonare-analysis.wasm +0 -0
  11. package/dist/sonare.js +1 -1
  12. package/dist/sonare.wasm +0 -0
  13. package/dist/worker.js +56 -29
  14. package/dist/worker.js.map +1 -1
  15. package/dist/worklet.d.ts +67 -18
  16. package/dist/worklet.js +193 -42
  17. package/dist/worklet.js.map +1 -1
  18. package/package.json +3 -3
  19. package/src/_chain_config.ts +6 -1
  20. package/src/analysis_helpers.ts +34 -29
  21. package/src/audio.ts +7 -2
  22. package/src/codes.ts +47 -11
  23. package/src/effects_mastering.ts +5 -0
  24. package/src/effects_transform.ts +202 -22
  25. package/src/feature_music.ts +8 -1
  26. package/src/feature_spectral.ts +64 -2
  27. package/src/feature_spectrogram.ts +44 -3
  28. package/src/index.ts +28 -3
  29. package/src/mastering_core.ts +70 -0
  30. package/src/metering.ts +18 -0
  31. package/src/mixer.ts +3 -3
  32. package/src/project.ts +6 -0
  33. package/src/project_class.ts +143 -16
  34. package/src/project_internal.ts +14 -5
  35. package/src/project_types.ts +50 -9
  36. package/src/public_types_mastering.ts +9 -0
  37. package/src/public_types_mixing.ts +16 -0
  38. package/src/public_types_realtime.ts +23 -5
  39. package/src/public_types_spectral.ts +16 -2
  40. package/src/quick_analysis.ts +21 -3
  41. package/src/realtime_engine.ts +14 -3
  42. package/src/sonare.js.d.ts +87 -0
  43. package/src/stream_analyzer.ts +6 -1
  44. package/src/web_midi.ts +10 -7
  45. package/src/worklet/engine-node.ts +54 -19
  46. package/src/worklet/engine-parameter-facade.ts +30 -1
  47. package/src/worklet/engine-processor.ts +52 -20
  48. package/src/worklet/engine-register.ts +1 -1
  49. package/src/worklet/engine-strips.ts +2 -2
  50. package/src/worklet/engine.ts +10 -0
  51. package/src/worklet/guards.ts +99 -7
  52. package/src/worklet/messages.ts +41 -1
  53. package/src/worklet/protocol.ts +4 -0
package/dist/index.d.ts CHANGED
@@ -366,6 +366,15 @@ interface MasteringChainConfig {
366
366
  releaseMs?: number;
367
367
  applyGainAtInputRate?: boolean;
368
368
  };
369
+ /**
370
+ * Dot-notation spelling of any leaf above, e.g. `'loudness.targetLufs': -20`
371
+ * beside or instead of `loudness: { targetLufs: -20 }`. It is the form the C
372
+ * ABI carries parameters in, so a caller assembling overrides dynamically can
373
+ * emit it directly; the core validates the key and rejects an unknown one.
374
+ * The nested spelling is canonical — prefer it in hand-written code, where it
375
+ * is checked field by field while a dotted key is only checked at run time.
376
+ */
377
+ [flatKey: `${string}.${string}`]: number | boolean | undefined;
369
378
  }
370
379
  /**
371
380
  * Configuration for the block-by-block {@link StreamingMasteringChain}.
@@ -552,6 +561,10 @@ type AutomationCurve = 'linear' | 'exponential' | 'hold' | 's-curve';
552
561
  * remains unity. Maps to the underlying integer code.
553
562
  */
554
563
  type PanLaw = 'const3dB' | 'const4.5dB' | 'const6dB' | 'linear0dB';
564
+ /** Accepted pan-law name aliases for mixer and realtime-engine inputs. */
565
+ type PanLawName = PanLaw | 'const-3db' | '-3db' | 'const-4.5db' | '-4.5db' | 'const-6db' | '-6db' | 'linear-0db' | 'linear' | '0db';
566
+ /** Pan-law name or raw C ABI ordinal. */
567
+ type PanLawInput = PanLawName | number;
555
568
  /**
556
569
  * Meter tap point for reading a strip's meter snapshot
557
570
  * (see {@link Mixer.meterTap} and {@link Mixer.stripMeter}).
@@ -961,14 +974,21 @@ interface EqMatchOptions {
961
974
  maxBands?: number;
962
975
  }
963
976
  type VoicePresetId = 'neutral-monitor' | 'bright-idol' | 'soft-whisper' | 'deep-narrator' | 'robot-mascot' | 'dark-villain';
964
- interface RealtimeVoiceChangerPreset {
977
+ type VoicePresetCategory = 'monitor' | 'bright' | 'soft' | 'deep' | 'robot' | 'dark' | 'custom';
978
+ interface RealtimeVoiceChangerPresetMetadata {
965
979
  schemaVersion: 1;
966
- id?: string;
967
- name?: string;
980
+ id: string;
981
+ name: string;
968
982
  description?: string;
969
- macros?: Record<string, number>;
970
- dsp?: Record<string, unknown>;
971
- }
983
+ category: VoicePresetCategory;
984
+ }
985
+ type RealtimeVoiceChangerPreset = (RealtimeVoiceChangerPresetMetadata & {
986
+ dsp: Record<string, unknown>;
987
+ macros?: never;
988
+ }) | (RealtimeVoiceChangerPresetMetadata & {
989
+ macros: Record<string, number>;
990
+ dsp?: never;
991
+ });
972
992
  type RealtimeVoiceChangerConfigInput = VoicePresetId | RealtimeVoiceChangerPreset;
973
993
  /**
974
994
  * Flat (POD) realtime voice-changer configuration. Keys are camelCase to match
@@ -1016,6 +1036,14 @@ interface RealtimeVoiceChangerPodConfig {
1016
1036
  limiterIspCeilingDbtp: number;
1017
1037
  }
1018
1038
 
1039
+ /**
1040
+ * Per-frame voicing decision, one entry per `f0Hz` frame. A truthy or non-zero
1041
+ * entry marks the frame voiced. The union covers what the analysis side hands
1042
+ * back — `PitchResult.voicedFlag` is a `boolean[]` — as well as the typed and
1043
+ * plain numeric arrays a caller may build directly, so a pitch track can be fed
1044
+ * straight into pitch correction without a conversion step.
1045
+ */
1046
+ type VoicedFlags = Int32Array | Uint8Array | Float32Array | readonly number[] | readonly boolean[];
1019
1047
  /** Options for `pitchCorrectTimevarying`. All fields are optional. */
1020
1048
  interface PitchCorrectOptions extends ValidateOptions {
1021
1049
  /** `'midi'` retunes toward `targetMidi`; `'scale'` snaps to the key. Default `'midi'`. */
@@ -1036,8 +1064,8 @@ interface PitchCorrectOptions extends ValidateOptions {
1036
1064
  retuneSpeedMs?: number;
1037
1065
  /** Corrections below this are bypassed to preserve vibrato (cents). Default 20. */
1038
1066
  vibratoThresholdCents?: number;
1039
- /** Per-frame voiced flags (non-zero = voiced); omit to treat all frames as voiced. */
1040
- voiced?: Int32Array;
1067
+ /** Per-frame voiced flags (truthy = voiced); omit to treat all frames as voiced. */
1068
+ voiced?: VoicedFlags;
1041
1069
  /** Per-frame voicing probability in `[0, 1]`; omit to derive from `voiced`. */
1042
1070
  voicedProb?: Float32Array;
1043
1071
  }
@@ -1296,12 +1324,16 @@ interface CapabilityCatalog {
1296
1324
  presets: CapabilityCatalogPresets;
1297
1325
  }
1298
1326
 
1327
+ type NormalizeMode = 'peak' | 'rms';
1299
1328
  /** Canonical request form for HPSS. */
1300
1329
  interface HpssRequest {
1301
1330
  samples: Float32Array;
1302
1331
  sampleRate?: number;
1303
1332
  kernelHarmonic?: number;
1304
1333
  kernelPercussive?: number;
1334
+ nFft?: number;
1335
+ hopLength?: number;
1336
+ hardMask?: boolean;
1305
1337
  }
1306
1338
  interface HarmonicRequest extends ValidateOptions {
1307
1339
  samples: Float32Array;
@@ -1315,11 +1347,15 @@ interface TimeStretchRequest extends ValidateOptions {
1315
1347
  samples: Float32Array;
1316
1348
  sampleRate?: number;
1317
1349
  rate: number;
1350
+ nFft?: number;
1351
+ hopLength?: number;
1318
1352
  }
1319
1353
  interface PitchShiftRequest extends ValidateOptions {
1320
1354
  samples: Float32Array;
1321
1355
  sampleRate?: number;
1322
1356
  semitones: number;
1357
+ nFft?: number;
1358
+ hopLength?: number;
1323
1359
  }
1324
1360
  interface PitchCorrectToMidiRequest extends ValidateOptions {
1325
1361
  samples: Float32Array;
@@ -1333,7 +1369,7 @@ interface PitchCorrectToMidiTimevaryingRequest extends ValidateOptions {
1333
1369
  targetMidi: number;
1334
1370
  sampleRate?: number;
1335
1371
  hopLength?: number;
1336
- voiced?: Int32Array;
1372
+ voiced?: VoicedFlags;
1337
1373
  voicedProb?: Float32Array;
1338
1374
  }
1339
1375
  interface PitchCorrectTimevaryingRequest extends PitchCorrectOptions {
@@ -1354,6 +1390,7 @@ interface NormalizeRequest extends ValidateOptions {
1354
1390
  samples: Float32Array;
1355
1391
  sampleRate?: number;
1356
1392
  targetDb?: number;
1393
+ mode?: NormalizeMode;
1357
1394
  }
1358
1395
  interface SpectralEditRequest extends SpectralEditOptions, ValidateOptions {
1359
1396
  samples: Float32Array;
@@ -1370,7 +1407,7 @@ interface SpectralEditRequest extends SpectralEditOptions, ValidateOptions {
1370
1407
  * @returns Separated harmonic and percussive components
1371
1408
  */
1372
1409
  declare function hpss(request: HpssRequest): HpssResult;
1373
- declare function hpss(samples: Float32Array, sampleRate?: number, kernelHarmonic?: number, kernelPercussive?: number): HpssResult;
1410
+ declare function hpss(samples: Float32Array, sampleRate?: number, kernelHarmonic?: number, kernelPercussive?: number, nFft?: number, hopLength?: number, hardMask?: boolean): HpssResult;
1374
1411
  /**
1375
1412
  * Extract harmonic component from audio.
1376
1413
  *
@@ -1399,6 +1436,7 @@ declare function percussive(samples: Float32Array, sampleRate?: number, options?
1399
1436
  */
1400
1437
  declare function timeStretch(request: TimeStretchRequest): Float32Array;
1401
1438
  declare function timeStretch(samples: Float32Array, sampleRate: number, rate: number, options?: ValidateOptions): Float32Array;
1439
+ declare function timeStretch(samples: Float32Array, sampleRate: number, rate: number, nFft?: number, hopLength?: number, options?: ValidateOptions): Float32Array;
1402
1440
  /**
1403
1441
  * Pitch-shift audio without changing duration.
1404
1442
  *
@@ -1409,6 +1447,7 @@ declare function timeStretch(samples: Float32Array, sampleRate: number, rate: nu
1409
1447
  */
1410
1448
  declare function pitchShift(request: PitchShiftRequest): Float32Array;
1411
1449
  declare function pitchShift(samples: Float32Array, sampleRate: number, semitones: number, options?: ValidateOptions): Float32Array;
1450
+ declare function pitchShift(samples: Float32Array, sampleRate: number, semitones: number, nFft?: number, hopLength?: number, options?: ValidateOptions): Float32Array;
1412
1451
  /**
1413
1452
  * Pitch-correct audio from a current MIDI note to a target MIDI note.
1414
1453
  *
@@ -1430,21 +1469,23 @@ declare function pitchCorrectToMidi(samples: Float32Array, sampleRate?: number,
1430
1469
  * Unlike {@link pitchCorrectToMidi} (a single constant transpose), this follows
1431
1470
  * the caller-supplied per-frame `f0Hz` contour and retunes every voiced frame
1432
1471
  * toward `targetMidi`, so vibrato/drift in the source is tracked rather than
1433
- * flattened. `voiced` (non-zero = voiced) and `voicedProb` ([0,1]) are optional;
1472
+ * flattened. `voiced` (truthy = voiced) and `voicedProb` ([0,1]) are optional;
1434
1473
  * omitting them treats every frame as voiced. An `f0Hz` NaN is accepted only
1435
- * when the corresponding `voiced` entry is zero, matching pYIN output.
1474
+ * when the corresponding `voiced` entry is falsy, matching pYIN output. The
1475
+ * `voicedFlag` / `voicedProb` arrays of a {@link PitchResult} can be passed
1476
+ * through directly.
1436
1477
  *
1437
1478
  * @param samples - Audio samples (mono, float32)
1438
1479
  * @param f0Hz - Per-frame measured F0 in Hz (one entry per analysis frame)
1439
1480
  * @param targetMidi - Desired MIDI note number
1440
1481
  * @param sampleRate - Sample rate in Hz
1441
1482
  * @param hopLength - F0 hop in samples (frame i covers sample i*hopLength)
1442
- * @param voiced - Optional per-frame voiced flags (non-zero = voiced)
1483
+ * @param voiced - Optional per-frame voiced flags (truthy = voiced)
1443
1484
  * @param voicedProb - Optional per-frame voicing probability in [0, 1]
1444
1485
  * @returns Pitch-corrected audio
1445
1486
  */
1446
1487
  declare function pitchCorrectToMidiTimevarying(request: PitchCorrectToMidiTimevaryingRequest): Float32Array;
1447
- declare function pitchCorrectToMidiTimevarying(samples: Float32Array, f0Hz: Float32Array, targetMidi: number, sampleRate?: number, hopLength?: number, voiced?: Int32Array, voicedProb?: Float32Array, options?: ValidateOptions): Float32Array;
1488
+ declare function pitchCorrectToMidiTimevarying(samples: Float32Array, f0Hz: Float32Array, targetMidi: number, sampleRate?: number, hopLength?: number, voiced?: VoicedFlags, voicedProb?: Float32Array, options?: ValidateOptions): Float32Array;
1448
1489
  /**
1449
1490
  * Contour-following pitch correction toward a fixed MIDI note OR a musical
1450
1491
  * scale, with tunable retune strength and vibrato preservation.
@@ -1480,15 +1521,18 @@ declare function noteStretch(samples: Float32Array, sampleRate?: number, options
1480
1521
  declare function noteMove(request: NoteMoveRequest): Float32Array;
1481
1522
  declare function noteMove(samples: Float32Array, sampleRate?: number, options?: NoteMoveOptions & ValidateOptions): Float32Array;
1482
1523
  /**
1483
- * Normalize audio to target peak level.
1524
+ * Normalize audio to a target peak or RMS level.
1484
1525
  *
1485
1526
  * @param samples - Audio samples (mono, float32)
1486
1527
  * @param sampleRate - Sample rate in Hz (default: 22050)
1487
- * @param targetDb - Finite target at or below 0 dBFS (default: 0 dB = full scale)
1528
+ * @param targetDb - Finite target at or below 0 dBFS (default: 0 dB = full scale).
1529
+ * For `mode: 'peak'`, this is the peak target; for `mode: 'rms'`, this is the RMS target.
1530
+ * @param mode - Normalization mode: `'peak'` (default) or `'rms'`.
1488
1531
  * @returns Normalized audio
1489
1532
  */
1490
1533
  declare function normalize(request: NormalizeRequest): Float32Array;
1491
1534
  declare function normalize(samples: Float32Array, sampleRate: number, targetDb?: number, options?: ValidateOptions): Float32Array;
1535
+ declare function normalize(samples: Float32Array, sampleRate: number, targetDb?: number, mode?: NormalizeMode, options?: ValidateOptions): Float32Array;
1492
1536
  /**
1493
1537
  * Apply region-based spectral edits (gain/attenuate/mute/heal) to mono audio.
1494
1538
  *
@@ -1732,6 +1776,20 @@ interface MasteringStreamingPreviewRequest {
1732
1776
  sampleRate?: number;
1733
1777
  platforms?: StreamingPlatform[];
1734
1778
  }
1779
+ /** Canonical request form for the stereo analysis entry points. */
1780
+ interface MasteringStereoParamsRequest {
1781
+ left: Float32Array;
1782
+ right: Float32Array;
1783
+ sampleRate?: number;
1784
+ params?: MasteringProcessorParams;
1785
+ }
1786
+ /** Canonical request form for the stereo streaming-platform preview. */
1787
+ interface MasteringStreamingPreviewStereoRequest {
1788
+ left: Float32Array;
1789
+ right: Float32Array;
1790
+ sampleRate?: number;
1791
+ platforms?: StreamingPlatform[];
1792
+ }
1735
1793
  /**
1736
1794
  * Apply mastering loudness normalization with a true-peak ceiling.
1737
1795
  *
@@ -1860,6 +1918,34 @@ declare function masteringAudioProfile(request: MasteringSamplesParamsRequest):
1860
1918
  declare function masteringAudioProfile(samples: Float32Array, sampleRate?: number, params?: MasteringProcessorParams): string;
1861
1919
  declare function masteringStreamingPreview(request: MasteringStreamingPreviewRequest): string;
1862
1920
  declare function masteringStreamingPreview(samples: Float32Array, sampleRate?: number, platforms?: StreamingPlatform[]): string;
1921
+ /**
1922
+ * Suggest a mastering chain for a stereo pair, as shared JSON.
1923
+ *
1924
+ * Profiles through {@link masteringAudioProfileStereo}, so the loudness stage
1925
+ * of the suggestion is built on the channel-summed program rather than a
1926
+ * downmix that reads roughly 6 dB low.
1927
+ */
1928
+ declare function masteringAssistantSuggestStereo(request: MasteringStereoParamsRequest): string;
1929
+ /**
1930
+ * Mastering assistant profile of a stereo pair, as shared JSON.
1931
+ *
1932
+ * Only the `loudness` block is measured from the two channels: integrated LUFS
1933
+ * and LRA come from the channel-summed program and the true peak is the larger
1934
+ * of the two. The spectral, dynamics and tempo fields describe shape and timing
1935
+ * rather than absolute level and are measured on the downmix, which keeps them
1936
+ * comparable with {@link masteringAudioProfile}.
1937
+ */
1938
+ declare function masteringAudioProfileStereo(request: MasteringStereoParamsRequest): string;
1939
+ /**
1940
+ * Preview streaming-platform normalization for a stereo pair, as shared JSON.
1941
+ *
1942
+ * Measures the integrated loudness with BS.1770 channel summing and reports the
1943
+ * larger of the two channel true peaks. Passing a `0.5 * (left + right)` downmix
1944
+ * to {@link masteringStreamingPreview} instead reads roughly 6 dB low on
1945
+ * decorrelated material, and both the normalization gain and the ceiling-risk
1946
+ * flag follow from that measurement.
1947
+ */
1948
+ declare function masteringStreamingPreviewStereo(request: MasteringStreamingPreviewStereoRequest): string;
1863
1949
 
1864
1950
  /** Compressor sidechain detector mode. */
1865
1951
  type CompressorDetector = 'peak' | 'rms' | 'log_rms';
@@ -2152,7 +2238,12 @@ declare class Audio {
2152
2238
  * mixed down to mono to match the `Audio` wrapper contract.
2153
2239
  */
2154
2240
  static fromMemoryWithBrowserFallback(bytes: Uint8Array, options?: BrowserAudioDecodeOptions): Promise<Audio>;
2155
- /** The raw audio samples. */
2241
+ /**
2242
+ * A copy of the raw audio samples. Mirrors Node's `getData()` contract: the
2243
+ * returned array is independent of the Audio's internal buffer, so mutating
2244
+ * it (or transferring it to a Worker) does not affect subsequent facade
2245
+ * calls, which all read the internal snapshot directly.
2246
+ */
2156
2247
  get data(): Float32Array;
2157
2248
  /** Number of samples. */
2158
2249
  get length(): number;
@@ -2307,6 +2398,10 @@ interface ProjectSource {
2307
2398
  storageHandleId: number;
2308
2399
  sampleRateHint: number;
2309
2400
  nameOrUri: string;
2401
+ /** Owning content hash for audio sources; empty for MIDI sources. */
2402
+ contentHash: string;
2403
+ /** External source-separation role for audio sources; empty for MIDI sources. */
2404
+ externalStemRole: string;
2310
2405
  }
2311
2406
  /** Names accepted by the minimal built-in oscillator synth. */
2312
2407
  declare const BUILTIN_SYNTH_WAVEFORMS: readonly ["sine", "saw", "sawtooth", "square", "triangle"];
@@ -2421,12 +2516,11 @@ interface SynthModRouting {
2421
2516
  *
2422
2517
  * The patch starts from a BASE — the named `preset` (see
2423
2518
  * {@link synthPresetNames}; a `"va:"` routing prefix is accepted) or, when
2424
- * `preset` is omitted, the default subtractive patch. Every numeric field then
2425
- * uses "0 / omit => keep the base value" (non-zero values override, clamped to
2426
- * their audible ranges) and the enum fields reserve `'default'` as keep. The
2427
- * frozen C ABI has no per-field presence bits, so explicit zero numeric
2428
- * overrides (for example `ampSustain: 0`) cannot be represented; they keep the
2429
- * base value. A non-empty `modRoutings` REPLACES the base mod matrix.
2519
+ * `preset` is omitted, the default subtractive patch. Omitting a numeric field
2520
+ * keeps the base value; supplying one overrides it (clamped to its audible
2521
+ * range), including an explicit `0` such as `stereoSpread: 0`. The enum fields
2522
+ * reserve `'default'` as keep. A `modRoutings` array REPLACES the base mod
2523
+ * matrix, and an empty array clears it, while omitting the key keeps it.
2430
2524
  *
2431
2525
  * Mode-specific deep parameters (FM operator stacks, modal mode tables,
2432
2526
  * drawbar registrations, kit pieces, piano strings) travel inside the named
@@ -2439,6 +2533,8 @@ interface SynthPatch {
2439
2533
  * `(destination_id, patch)` bindings instead. Defaults to `0`.
2440
2534
  */
2441
2535
  destinationId?: number;
2536
+ /** Resolve MIDI channels from incoming GM bank/program changes; defaults to false. */
2537
+ useGmPrograms?: boolean;
2442
2538
  /** Base preset name (see {@link synthPresetNames}); omit for the init patch. */
2443
2539
  preset?: string;
2444
2540
  engineMode?: SynthEngineMode | number;
@@ -2460,12 +2556,10 @@ interface SynthPatch {
2460
2556
  velToCutoffCents?: number;
2461
2557
  ampAttackMs?: number;
2462
2558
  ampDecayMs?: number;
2463
- /** 0 / omit keeps the base value; explicit zero sustain is not representable. */
2464
2559
  ampSustain?: number;
2465
2560
  ampReleaseMs?: number;
2466
2561
  filterAttackMs?: number;
2467
2562
  filterDecayMs?: number;
2468
- /** 0 / omit keeps the base value; explicit zero sustain is not representable. */
2469
2563
  filterSustain?: number;
2470
2564
  filterReleaseMs?: number;
2471
2565
  lfoRateHz?: number;
@@ -2541,12 +2635,31 @@ interface ProjectAutomationPoint {
2541
2635
  /** Curve to the next breakpoint (default `'linear'`). */
2542
2636
  curve?: ProjectAutomationCurve;
2543
2637
  }
2638
+ /**
2639
+ * Persistent target classification for an automation lane.
2640
+ *
2641
+ * The numeric ordinals mirror `SonareAutomationTargetKind`; the string names
2642
+ * are the public WASM spellings accepted by the project facade.
2643
+ */
2644
+ declare const AutomationTargetKind: {
2645
+ readonly opaque: 0;
2646
+ readonly trackFaderDb: 1;
2647
+ readonly trackPan: 2;
2648
+ };
2649
+ /** Accepted automation target kind name or ABI ordinal. */
2650
+ type ProjectAutomationTargetKind = 'opaque' | 'track-fader-db' | 'track-pan' | 0 | 1 | 2;
2651
+ /** Numeric aliases matching the C-ABI enum names. */
2652
+ declare const PROJECT_AUTOMATION_TARGET_OPAQUE: 0;
2653
+ declare const PROJECT_AUTOMATION_TARGET_TRACK_FADER_DB: 1;
2654
+ declare const PROJECT_AUTOMATION_TARGET_TRACK_PAN: 2;
2544
2655
  /** Automation-lane descriptor for {@link Project.addAutomationLane}. */
2545
2656
  interface ProjectAutomationLaneDesc {
2546
- /** Host-defined id of the parameter the lane drives. */
2657
+ /** Host-defined, non-zero id of the parameter the lane drives (zero is reserved). */
2547
2658
  targetParamId: number;
2548
2659
  /** Breakpoints (stored verbatim). */
2549
2660
  points: ReadonlyArray<ProjectAutomationPoint>;
2661
+ /** Optional persistent target classification; omission retains the legacy opaque route. */
2662
+ targetKind?: ProjectAutomationTargetKind;
2550
2663
  }
2551
2664
  /** One tempo segment for {@link Project.setTempoSegments}. */
2552
2665
  interface ProjectTempoSegment {
@@ -2602,6 +2715,21 @@ interface ProjectChordSymbol {
2602
2715
  /** True at a modulation boundary. */
2603
2716
  modulationBoundary?: boolean;
2604
2717
  }
2718
+ /** Descriptor accepted by {@link Project.setAssistSidecar}. */
2719
+ interface ProjectAssistSidecarInput {
2720
+ /** Non-empty module id key. */
2721
+ moduleId: string;
2722
+ /** Module-defined schema version. Defaults to `0`. */
2723
+ schemaVersion?: number;
2724
+ /** Target track id (`0` = project scope). Defaults to `0`. */
2725
+ targetTrackId?: number;
2726
+ /** Region start in PPQ. Defaults to `0`. */
2727
+ regionStartPpq?: number;
2728
+ /** Region end in PPQ. Defaults to `0`. */
2729
+ regionEndPpq?: number;
2730
+ /** Opaque module-owned payload bytes. Defaults to an empty payload. */
2731
+ payload?: Uint8Array;
2732
+ }
2605
2733
  /** Assist sidecar snapshot returned by {@link Project.getAssistSidecar}. */
2606
2734
  interface ProjectAssistSidecar {
2607
2735
  moduleId: string;
@@ -2751,6 +2879,8 @@ interface ProjectDeserializeResult {
2751
2879
  declare class Project {
2752
2880
  private native;
2753
2881
  constructor();
2882
+ /** Create a new empty project. */
2883
+ static create(): Project;
2754
2884
  /** Pack a MIDI 1.0 note-on event accepted by {@link setMidiEvents}. */
2755
2885
  static midiNoteOn(ppq: number, group: number, channel: number, note: number, velocity: number): ProjectMidiEvent;
2756
2886
  /** Pack a MIDI 1.0 note-off event accepted by {@link setMidiEvents}. */
@@ -2866,6 +2996,8 @@ declare class Project {
2866
2996
  clearHistory(): void;
2867
2997
  /** Cap the undo history depth (clamped to >= 1); evicts oldest entries beyond the cap. */
2868
2998
  setMaxUndoDepth(depth: number): void;
2999
+ /** Set the combined undo/redo history byte cap. Zero disables retention. */
3000
+ setMaxHistoryBytes(bytes: number): void;
2869
3001
  /** Replace a MIDI clip's entire event list. */
2870
3002
  setMidiEvents(clipId: number, events: ReadonlyArray<ProjectMidiEvent | readonly [number, number, number]>): void;
2871
3003
  /**
@@ -2963,8 +3095,11 @@ declare class Project {
2963
3095
  * Karplus-Strong / modal / additive / percussion / extended-waveguide-piano
2964
3096
  * engines plus the realism layer). Pass a {@link SynthPatch}, a preset-name
2965
3097
  * string (`'saw-lead'` / `'va:saw-lead'`; see {@link synthPresetNames}), or
2966
- * an array of either; each object entry may carry a `destinationId` binding
2967
- * convenience (default 0), which is not part of the NativeSynth patch itself.
3098
+ * an array of either; each object entry may carry `destinationId` (default
3099
+ * 0) and `useGmPrograms` (default `false`) binding conveniences, neither of
3100
+ * which is part of the NativeSynth patch itself. When enabled, MIDI program
3101
+ * changes select the corresponding General MIDI voice while the patch remains
3102
+ * the fallback.
2968
3103
  * Because the parameter defaults to `{}`, omission and explicit `undefined`
2969
3104
  * both create one default binding. Use an explicitly empty array `[]` (or
2970
3105
  * runtime `null`) for zero bindings. Unknown preset names throw.
@@ -3016,6 +3151,8 @@ declare class Project {
3016
3151
  unresolvedAudioSourceIds(): number[];
3017
3152
  /** Register decoded interleaved PCM for an existing audio source (undoable). */
3018
3153
  setSourceAudio(sourceId: number, audio: Float32Array, channels: number, sampleRate: number): void;
3154
+ /** Replace an audio source's metadata strings as one undoable edit. */
3155
+ setAudioSourceMetadata(sourceId: number, contentHash: string, externalStemRole: string): void;
3019
3156
  /** Replace a clip's take list and active take id (undoable). */
3020
3157
  setClipTakes(clipId: number, takes: ReadonlyArray<ProjectClipTake>, activeTakeId?: number): void;
3021
3158
  /** Replace a clip's comp segments (undoable). */
@@ -3046,12 +3183,21 @@ declare class Project {
3046
3183
  annotateKeys(keys: ReadonlyArray<ProjectKeySegment>): void;
3047
3184
  /** Replace the project's chord-symbol annotation stream (undoable). */
3048
3185
  annotateChords(chords: ReadonlyArray<ProjectChordSymbol>): void;
3049
- /** Add or update an opaque assist sidecar by module id + target scope (undoable). */
3186
+ /**
3187
+ * Add or update an opaque assist sidecar via an undoable edit.
3188
+ *
3189
+ * The descriptor form is the canonical API and matches the Node binding;
3190
+ * the positional form remains available for compatibility with the original
3191
+ * WASM facade.
3192
+ */
3193
+ setAssistSidecar(sidecar: ProjectAssistSidecarInput): void;
3050
3194
  setAssistSidecar(moduleId: string, schemaVersion: number, targetTrackId: number, regionStartPpq: number, regionEndPpq: number, payload: Uint8Array): void;
3051
3195
  /** Number of assist sidecars currently stored on the project. */
3052
3196
  assistSidecarCount(): number;
3053
3197
  /** Read one assist sidecar by stable project order. */
3054
3198
  getAssistSidecar(index: number): ProjectAssistSidecar;
3199
+ /** Read every stored assist sidecar in the same order as the index getter. */
3200
+ assistSidecars(): ProjectAssistSidecar[];
3055
3201
  /** Set the project's clip-overlap policy (SonareProjectOverlapPolicy ordinal). */
3056
3202
  setOverlapPolicy(policy: number): void;
3057
3203
  /** Read the project's clip-overlap policy (SonareProjectOverlapPolicy ordinal). */
@@ -3174,6 +3320,10 @@ interface EngineTrackLane {
3174
3320
  */
3175
3321
  sourceChannelLayout?: number;
3176
3322
  }
3323
+ /** Per-track cue/monitor tap mode: off, pre-fader listen, or after-fader listen. */
3324
+ type EngineTrackMonitorMode = 'off' | 'pfl' | 'afl' | 0 | 1 | 2;
3325
+ /** Short alias for {@link EngineTrackMonitorMode}. */
3326
+ type TrackMonitorMode = EngineTrackMonitorMode;
3177
3327
  interface EngineBus {
3178
3328
  busId: number;
3179
3329
  gainDb?: number;
@@ -3241,6 +3391,8 @@ declare class RealtimeEngine {
3241
3391
  */
3242
3392
  setParamSmoothingMs(smoothingMs: number): void;
3243
3393
  setSoloMute(laneIndex: number, solo: boolean, mute: boolean, renderFrame?: number): void;
3394
+ /** Queue a per-track PFL/AFL monitor tap mode change. */
3395
+ setTrackMonitorMode(laneIndex: number, mode: EngineTrackMonitorMode, renderFrame?: number): void;
3244
3396
  setMidiClips(clips: readonly EngineMidiClipSchedule[]): void;
3245
3397
  setBuiltinInstrument(config?: {
3246
3398
  destinationId?: number;
@@ -3447,7 +3599,7 @@ declare class RealtimeEngine {
3447
3599
  /** Sets a track lane strip's pan position in realtime (glitch-free). */
3448
3600
  setTrackStripPan(trackId: number, pan: number): void;
3449
3601
  /** Sets a track lane strip's pan law in realtime. */
3450
- setTrackStripPanLaw(trackId: number, panLaw: PanLaw | number): void;
3602
+ setTrackStripPanLaw(trackId: number, panLaw: PanLawInput): void;
3451
3603
  /** Sets a track lane strip's pan mode in realtime. */
3452
3604
  setTrackStripPanMode(trackId: number, panMode: PanMode | number): void;
3453
3605
  /** Sets a track lane strip's dual-pan left/right positions in realtime. */
@@ -4059,6 +4211,7 @@ interface NnlsChromaRequest extends GuardedOptions$2 {
4059
4211
  enableStftBlend?: boolean;
4060
4212
  stftBlendWeight?: number;
4061
4213
  stftBlendNFft?: number;
4214
+ hopLength?: number;
4062
4215
  }
4063
4216
  /**
4064
4217
  * Compute NNLS (non-negative least squares) chromagram.
@@ -4469,6 +4622,9 @@ interface HpssWithResidualRequest {
4469
4622
  sampleRate?: number;
4470
4623
  kernelHarmonic?: number;
4471
4624
  kernelPercussive?: number;
4625
+ nFft?: number;
4626
+ hopLength?: number;
4627
+ hardMask?: boolean;
4472
4628
  }
4473
4629
  interface LufsInterleavedRequest extends ValidateOptions {
4474
4630
  samples: Float32Array;
@@ -4557,7 +4713,7 @@ declare function phaseVocoder(samples: Float32Array, sampleRate: number, rate: n
4557
4713
  * HPSS into harmonic / percussive / residual signals.
4558
4714
  */
4559
4715
  declare function hpssWithResidual(request: HpssWithResidualRequest): WasmHpssWithResidualResult;
4560
- declare function hpssWithResidual(samples: Float32Array, sampleRate?: number, kernelHarmonic?: number, kernelPercussive?: number): WasmHpssWithResidualResult;
4716
+ declare function hpssWithResidual(samples: Float32Array, sampleRate?: number, kernelHarmonic?: number, kernelPercussive?: number, nFft?: number, hopLength?: number, hardMask?: boolean): WasmHpssWithResidualResult;
4561
4717
  /**
4562
4718
  * Channel-weighted multichannel integrated loudness + LRA (ITU-R BS.1770 /
4563
4719
  * EBU R128) from an interleaved buffer of `frames * channels` samples. The
@@ -4736,6 +4892,8 @@ interface TrimRequest extends GuardedOptions$1 {
4736
4892
  samples: Float32Array;
4737
4893
  sampleRate: number;
4738
4894
  thresholdDb?: number;
4895
+ frameLength?: number;
4896
+ hopLength?: number;
4739
4897
  }
4740
4898
  /**
4741
4899
  * Trim silence from beginning and end of audio.
@@ -4747,6 +4905,7 @@ interface TrimRequest extends GuardedOptions$1 {
4747
4905
  */
4748
4906
  declare function trim(request: TrimRequest): Float32Array;
4749
4907
  declare function trim(samples: Float32Array, sampleRate: number, thresholdDb?: number, options?: GuardedOptions$1): Float32Array;
4908
+ declare function trim(samples: Float32Array, sampleRate: number, thresholdDb?: number, frameLength?: number, hopLength?: number, options?: GuardedOptions$1): Float32Array;
4750
4909
  /**
4751
4910
  * Compute Short-Time Fourier Transform (STFT).
4752
4911
  *
@@ -4969,7 +5128,8 @@ declare enum SonareEngineCommandType {
4969
5128
  Punch = 14,
4970
5129
  SetMetronome = 15,
4971
5130
  SetMarker = 16,
4972
- SeekMarker = 17
5131
+ SeekMarker = 17,
5132
+ SetTrackMonitorMode = 26
4973
5133
  }
4974
5134
  declare enum SonareEngineTelemetryType {
4975
5135
  ProcessBlock = 0,
@@ -4995,7 +5155,8 @@ declare enum SonareEngineTelemetryError {
4995
5155
  InsertAutomationOverflow = 16,
4996
5156
  MidiClockOverflow = 17,
4997
5157
  MetronomeOverflow = 18,
4998
- InvalidCommand = 19
5158
+ InvalidCommand = 19,
5159
+ MaxChannelsExceeded = 20
4999
5160
  }
5000
5161
  interface SonareMeterRingBuffer {
5001
5162
  sharedBuffer: SharedArrayBuffer;
@@ -5594,6 +5755,15 @@ declare function meteringSilenceRatio(request: MeteringSilenceRatioRequest): num
5594
5755
  declare function meteringSilenceRatio(samples: Float32Array, sampleRate?: number, thresholdDb?: number, frameLength?: number, hopLength?: number, options?: ValidateOptions): number;
5595
5756
  declare function meteringCrestFactorDb(request: MeteringSamplesRequest): number;
5596
5757
  declare function meteringCrestFactorDb(samples: Float32Array, sampleRate?: number, options?: ValidateOptions): number;
5758
+ /**
5759
+ * Crest factor in dB across both channels of a stereo pair.
5760
+ *
5761
+ * Takes the peak across both channels and the RMS over both together. An
5762
+ * out-of-phase pair cancels in the `0.5 * (left + right)` downmix
5763
+ * {@link meteringCrestFactorDb} would need, which understates its RMS and so
5764
+ * overstates the crest factor.
5765
+ */
5766
+ declare function meteringCrestFactorDbStereo(request: MeteringStereoRequest): number;
5597
5767
  declare function meteringDcOffset(request: MeteringSamplesRequest): number;
5598
5768
  declare function meteringDcOffset(samples: Float32Array, sampleRate?: number, options?: ValidateOptions): number;
5599
5769
  /**
@@ -5820,6 +5990,7 @@ interface ChordFunctionalAnalysisRequest extends DetectChordsRequest {
5820
5990
  /** Canonical request form for impulse-response analysis. */
5821
5991
  interface AnalyzeImpulseResponseRequest extends SamplesRequest {
5822
5992
  nOctaveBands?: number;
5993
+ minDecayDb?: number;
5823
5994
  }
5824
5995
  /** Canonical request form for acoustic analysis. */
5825
5996
  interface DetectAcousticRequest extends AcousticOptions, SamplesRequest {
@@ -5943,7 +6114,7 @@ interface MusicAnalyzeRequest extends SamplesRequest, MusicAnalyzeOptions {
5943
6114
  declare function analyze(request: MusicAnalyzeRequest): AnalysisResult;
5944
6115
  declare function analyze(samples: Float32Array, sampleRate?: number, options?: GuardedOptions & MusicAnalyzeOptions): AnalysisResult;
5945
6116
  declare function analyzeImpulseResponse(request: AnalyzeImpulseResponseRequest): AcousticResult;
5946
- declare function analyzeImpulseResponse(samples: Float32Array, sampleRate?: number, nOctaveBands?: number): AcousticResult;
6117
+ declare function analyzeImpulseResponse(samples: Float32Array, sampleRate?: number, nOctaveBands?: number, minDecayDb?: number): AcousticResult;
5947
6118
  declare function detectAcoustic(request: DetectAcousticRequest): AcousticResult;
5948
6119
  declare function detectAcoustic(samples: Float32Array, sampleRate?: number, options?: AcousticOptions): AcousticResult;
5949
6120
  /**
@@ -6535,8 +6706,8 @@ declare class Mixer {
6535
6706
  setSoloSafe(stripIndex: number, soloSafe: boolean): void;
6536
6707
  /** Invert the polarity of the left and/or right channel of a strip. */
6537
6708
  setPolarityInvert(stripIndex: number, invertLeft: boolean, invertRight: boolean): void;
6538
- /** Set the strip's pan law. */
6539
- setPanLaw(stripIndex: number, panLaw: PanLaw | number): void;
6709
+ /** Set the strip's pan law (a {@link PanLawName} alias or raw C ABI ordinal). */
6710
+ setPanLaw(stripIndex: number, panLaw: PanLawInput): void;
6540
6711
  /**
6541
6712
  * Set a per-strip channel delay in samples. This changes the strip's reported
6542
6713
  * latency; recompile to re-run latency compensation.
@@ -7207,9 +7378,10 @@ declare function engineAbiVersion(): number;
7207
7378
  declare function voiceChangerAbiVersion(): number;
7208
7379
  /**
7209
7380
  * Map a voice-character preset ordinal (or canonical id) to its canonical id
7210
- * string (e.g. `'bright-idol'`). Invalid ordinals throw.
7381
+ * string (e.g. `'bright-idol'`). Unknown numeric ordinals return `null`;
7382
+ * unknown preset ids throw.
7211
7383
  */
7212
- declare function voiceCharacterPresetId(preset: VoicePresetId | number): string;
7384
+ declare function voiceCharacterPresetId(preset: VoicePresetId | number): VoicePresetId | null;
7213
7385
  /**
7214
7386
  * Return the canonical (normalized) flat POD config for a built-in voice
7215
7387
  * preset, skipping the JSON round-trip. Accepts a canonical preset id or its
@@ -7217,4 +7389,4 @@ declare function voiceCharacterPresetId(preset: VoicePresetId | number): string;
7217
7389
  */
7218
7390
  declare function realtimeVoiceChangerPresetConfig(preset: VoicePresetId | number): RealtimeVoiceChangerPodConfig;
7219
7391
 
7220
- 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, BUILTIN_SYNTH_WAVEFORMS, type BarChord, type Beat, type BindMicrophoneInputOptions, type BindWebMidiOptions, type BpmAnalysisResult, type BpmCandidate, type BpmHypothesis, type BrowserAudioDecodeOptions, type BuiltinSynthBinding, type BuiltinSynthConfig, type BuiltinSynthWaveform, type ChirpRequest, type Chord, type ChordAnalysisResult, type ChordChange, type ChordDetectionOptions, type ChordFunctionalAnalysisRequest, ChordQuality, type ChromaResult, type ChromaSpectrogramRequest, type ClicksRequest, ClipPageProvider, type ClipPageRequest, type ClipPageStreamSource, ClipPageStreamer, type ClipPageStreamerEngine, type ClipPageStreamerOptions, type ClipPageStreamerRequest, 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 DetectOnsetsRequest, 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 EngineCaptureSource, 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 ExternalSeparatedStem, type ExternalSeparatedStemImportRequest, type ExternalSeparatedStemImportResult, type FixFramesRequest, type FixLengthRequest, type FourierTempogramRequest, type FrameBuffer, type FrameSignalRequest, type GateOptions, type GoniometerPoint, type GriffinLimRequest, 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 MasteringLoudnessSummary, type MasteringOptions, type MasteringPairAnalyzeRequest, type MasteringPairProcessRequest, type MasteringPreset, type MasteringProcessRequest, type MasteringProcessStereoRequest, type MasteringProcessorCatalogEntry, type MasteringProcessorParams, type MasteringRealtimeCost, type MasteringRepairDeclickRequest, type MasteringRepairDeclipRequest, type MasteringRepairDecrackleRequest, type MasteringRepairDehumRequest, type MasteringRepairDenoiseClassicalRequest, type MasteringRepairDereverbClassicalRequest, type MasteringRepairTrimSilenceRequest, type MasteringReport, type MasteringRequest, type MasteringResult, type MasteringSamplesParamsRequest, type MasteringStereoAnalyzeRequest, type MasteringStereoChainResult, type MasteringStereoResult, type MasteringStreamingPreviewRequest, type Matrix2dResult, type MelDeltaRequest, 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 NoteSegment, type NoteSegmentsRequest, type NoteStretchOptions, type NoteStretchRequest, type OfflineWorker, type OfflineWorkerCallOptions, OfflineWorkerClient, type OfflineWorkerClientOptions, type OfflineWorkerProgress, OfflineWorkerTask, type OnsetBacktrackRequest, 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, type PiptrackRequest, 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 ProjectClip, 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 ProjectSource, type ProjectTrack, type ProjectTrackDesc, type ProjectTrackKind, type ProjectWarpAnchor, type ProjectWarpMapDesc, RealtimeEngine, RealtimeVoiceChanger, type RealtimeVoiceChangerConfigInput, type RealtimeVoiceChangerInterleavedBuffer, type RealtimeVoiceChangerMonoBuffer, type RealtimeVoiceChangerPlanarBuffer, type RealtimeVoiceChangerPodConfig, type ReassignedSpectrogramRequest, 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 SegmentAgglomerativeRequest, type SegmentCrossSimilarityRequest, type SegmentLagToRecurrenceRequest, type SegmentMatrix, type SegmentPathEnhanceRequest, type SegmentRecurrenceMatrixRequest, type SegmentRecurrenceToLagRequest, type SegmentSubsegmentRequest, type SendTiming, type Sf2InstrumentConfig, type Sf2ProgramStatus, type SilenceRequest, type SoloProcessor, type SonareCapabilities, 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 ToneRequest, 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 WorkletOpfsClipStreamHost, type ZeroCrossingRateRequest, type ZeroCrossingsRequest, abiVersion, amplitudeToDb, analyze, analyzeBpm, analyzeDynamics, analyzeImpulseResponse, analyzeMelody, analyzeRhythm, analyzeSections, analyzeTimbre, analyzeWithProgress, attachOpfsClipStream, bassChroma, bindMicrophoneInput, bindWebMidi, capabilities, capabilityCatalog, chirp, chordFunctionalAnalysis, chroma, chromaCens, chromaCqt, clicks, 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, griffinLim, 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, melDelta, 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, noteSegments, noteStretch, noteToHz, onsetBacktrack, onsetEnvelope, onsetStrengthMulti, opfsClipPageWorkerSource, padCenter, pcen, peakPick, percussive, phaseVocoder, piptrack, pitchCorrectTimevarying, pitchCorrectToMidi, pitchCorrectToMidiTimevarying, pitchPyin, pitchShift, pitchTuning, pitchYin, plp, polyFeatures, powerToDb, preemphasis, projectAbiVersion, pseudoCqt, realtimeVoiceChangerPresetConfig, realtimeVoiceChangerPresetJson, realtimeVoiceChangerPresetNames, reassignedSpectrogram, remix, resample, rmsEnergy, roomMorph, samplesToFrames, scaleCorrectionSemitones, scalePitchClassEnabled, scaleQuantizeMidi, segmentAgglomerative, segmentCrossSimilarity, segmentLagToRecurrence, segmentPathEnhance, segmentRecurrenceMatrix, segmentRecurrenceToLag, segmentSubsegment, shortTermLufs, spectralBandwidth, spectralCentroid, spectralContrast, spectralEdit, spectralFlatness, spectralFlux, spectralRolloff, splitSilence, stft, stftDb, streamAnalyzerConfigDefaults, synthEnumTables, synthPresetNames, synthPresetPatch, synthesizeRir, tempogram, tempogramRatio, timeStretch, timeToFrames, tone, tonnetz, trim, trimSilence, validateRealtimeVoiceChangerPresetJson, vectorNormalize, version, voiceChange, voiceChangeRealtime, voiceChangerAbiVersion, voiceCharacterPresetId, vqt, vqtToAudio, waveformPeakPyramid, waveformPeaks, zeroCrossingRate, zeroCrossings };
7392
+ 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, AutomationTargetKind, BUILTIN_SYNTH_WAVEFORMS, type BarChord, type Beat, type BindMicrophoneInputOptions, type BindWebMidiOptions, type BpmAnalysisResult, type BpmCandidate, type BpmHypothesis, type BrowserAudioDecodeOptions, type BuiltinSynthBinding, type BuiltinSynthConfig, type BuiltinSynthWaveform, type ChirpRequest, type Chord, type ChordAnalysisResult, type ChordChange, type ChordDetectionOptions, type ChordFunctionalAnalysisRequest, ChordQuality, type ChromaResult, type ChromaSpectrogramRequest, type ClicksRequest, ClipPageProvider, type ClipPageRequest, type ClipPageStreamSource, ClipPageStreamer, type ClipPageStreamerEngine, type ClipPageStreamerOptions, type ClipPageStreamerRequest, 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 DetectOnsetsRequest, 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 EngineCaptureSource, 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 EngineTrackMonitorMode, 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 ExternalSeparatedStem, type ExternalSeparatedStemImportRequest, type ExternalSeparatedStemImportResult, type FixFramesRequest, type FixLengthRequest, type FourierTempogramRequest, type FrameBuffer, type FrameSignalRequest, type GateOptions, type GoniometerPoint, type GriffinLimRequest, 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 MasteringLoudnessSummary, type MasteringOptions, type MasteringPairAnalyzeRequest, type MasteringPairProcessRequest, type MasteringPreset, type MasteringProcessRequest, type MasteringProcessStereoRequest, type MasteringProcessorCatalogEntry, type MasteringProcessorParams, type MasteringRealtimeCost, type MasteringRepairDeclickRequest, type MasteringRepairDeclipRequest, type MasteringRepairDecrackleRequest, type MasteringRepairDehumRequest, type MasteringRepairDenoiseClassicalRequest, type MasteringRepairDereverbClassicalRequest, type MasteringRepairTrimSilenceRequest, type MasteringReport, type MasteringRequest, type MasteringResult, type MasteringSamplesParamsRequest, type MasteringStereoAnalyzeRequest, type MasteringStereoChainResult, type MasteringStereoParamsRequest, type MasteringStereoResult, type MasteringStreamingPreviewRequest, type MasteringStreamingPreviewStereoRequest, type Matrix2dResult, type MelDeltaRequest, 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 NormalizeMode, type NormalizeRequest, type NoteMoveRequest, type NoteSegment, type NoteSegmentsRequest, type NoteStretchOptions, type NoteStretchRequest, type OfflineWorker, type OfflineWorkerCallOptions, OfflineWorkerClient, type OfflineWorkerClientOptions, type OfflineWorkerProgress, OfflineWorkerTask, type OnsetBacktrackRequest, type OnsetEnvelopeRequest, type OnsetStrengthMultiRequest, type OpfsClipPageProviderBinding, type OpfsClipPageProviderOptions, type OpfsClipStream, type OpfsClipStreamOptions, PROJECT_AUTOMATION_TARGET_OPAQUE, PROJECT_AUTOMATION_TARGET_TRACK_FADER_DB, PROJECT_AUTOMATION_TARGET_TRACK_PAN, type PadCenterRequest, type PairAnalysis, type PairProcessor, type PanLaw, type PanLawInput, type PanLawName, type PanMode, type PatternScore, type PcenRequest, type PeakPickRequest, type PercussiveRequest, type PhaseScopeReport, type PhaseVocoderRequest, type PiptrackRequest, 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 ProjectAssistSidecarInput, type ProjectAutomationCurve, type ProjectAutomationLaneDesc, type ProjectAutomationPoint, type ProjectAutomationTargetKind, type ProjectBounceOptions, type ProjectChordSymbol, type ProjectClip, 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 ProjectSource, type ProjectTrack, type ProjectTrackDesc, type ProjectTrackKind, type ProjectWarpAnchor, type ProjectWarpMapDesc, RealtimeEngine, RealtimeVoiceChanger, type RealtimeVoiceChangerConfigInput, type RealtimeVoiceChangerInterleavedBuffer, type RealtimeVoiceChangerMonoBuffer, type RealtimeVoiceChangerPlanarBuffer, type RealtimeVoiceChangerPodConfig, type ReassignedSpectrogramRequest, 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 SegmentAgglomerativeRequest, type SegmentCrossSimilarityRequest, type SegmentLagToRecurrenceRequest, type SegmentMatrix, type SegmentPathEnhanceRequest, type SegmentRecurrenceMatrixRequest, type SegmentRecurrenceToLagRequest, type SegmentSubsegmentRequest, type SendTiming, type Sf2InstrumentConfig, type Sf2ProgramStatus, type SilenceRequest, type SoloProcessor, type SonareCapabilities, 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 ToneRequest, type TonnetzRequest, type TrackMonitorMode, 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 VoicedFlags, type VqtRequest, type VqtToAudioRequest, type WaveformPeakPyramidOptions, type WaveformPeakPyramidRequest, type WaveformPeaksOptions, type WaveformPeaksReport, type WaveformPeaksRequest, type WebMidiBinding, type WebMidiCcBinding, type WebMidiInputInfo, type WorkletOpfsClipStreamHost, type ZeroCrossingRateRequest, type ZeroCrossingsRequest, abiVersion, amplitudeToDb, analyze, analyzeBpm, analyzeDynamics, analyzeImpulseResponse, analyzeMelody, analyzeRhythm, analyzeSections, analyzeTimbre, analyzeWithProgress, attachOpfsClipStream, bassChroma, bindMicrophoneInput, bindWebMidi, capabilities, capabilityCatalog, chirp, chordFunctionalAnalysis, chroma, chromaCens, chromaCqt, clicks, 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, griffinLim, harmonic, hasFfmpegSupport, hpss, hpssWithResidual, hybridCqt, hzToMel, hzToMidi, hzToNote, init, isInitialized, isSonareError, isWebMidiAvailable, lufs, lufsInterleaved, masterAudio, masterAudioStereo, masterAudioStereoWithProgress, masterAudioWithProgress, mastering, masteringAssistantSuggest, masteringAssistantSuggestStereo, masteringAudioProfile, masteringAudioProfileStereo, 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, masteringStreamingPreviewStereo, melDelta, melSpectrogram, melToAudio, melToHz, melToStft, meteringCrestFactorDb, meteringCrestFactorDbStereo, 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, noteSegments, noteStretch, noteToHz, onsetBacktrack, onsetEnvelope, onsetStrengthMulti, opfsClipPageWorkerSource, padCenter, pcen, peakPick, percussive, phaseVocoder, piptrack, pitchCorrectTimevarying, pitchCorrectToMidi, pitchCorrectToMidiTimevarying, pitchPyin, pitchShift, pitchTuning, pitchYin, plp, polyFeatures, powerToDb, preemphasis, projectAbiVersion, pseudoCqt, realtimeVoiceChangerPresetConfig, realtimeVoiceChangerPresetJson, realtimeVoiceChangerPresetNames, reassignedSpectrogram, remix, resample, rmsEnergy, roomMorph, samplesToFrames, scaleCorrectionSemitones, scalePitchClassEnabled, scaleQuantizeMidi, segmentAgglomerative, segmentCrossSimilarity, segmentLagToRecurrence, segmentPathEnhance, segmentRecurrenceMatrix, segmentRecurrenceToLag, segmentSubsegment, shortTermLufs, spectralBandwidth, spectralCentroid, spectralContrast, spectralEdit, spectralFlatness, spectralFlux, spectralRolloff, splitSilence, stft, stftDb, streamAnalyzerConfigDefaults, synthEnumTables, synthPresetNames, synthPresetPatch, synthesizeRir, tempogram, tempogramRatio, timeStretch, timeToFrames, tone, tonnetz, trim, trimSilence, validateRealtimeVoiceChangerPresetJson, vectorNormalize, version, voiceChange, voiceChangeRealtime, voiceChangerAbiVersion, voiceCharacterPresetId, vqt, vqtToAudio, waveformPeakPyramid, waveformPeaks, zeroCrossingRate, zeroCrossings };