@libraz/libsonare 1.7.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.
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}.
@@ -1027,6 +1036,14 @@ interface RealtimeVoiceChangerPodConfig {
1027
1036
  limiterIspCeilingDbtp: number;
1028
1037
  }
1029
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[];
1030
1047
  /** Options for `pitchCorrectTimevarying`. All fields are optional. */
1031
1048
  interface PitchCorrectOptions extends ValidateOptions {
1032
1049
  /** `'midi'` retunes toward `targetMidi`; `'scale'` snaps to the key. Default `'midi'`. */
@@ -1047,8 +1064,8 @@ interface PitchCorrectOptions extends ValidateOptions {
1047
1064
  retuneSpeedMs?: number;
1048
1065
  /** Corrections below this are bypassed to preserve vibrato (cents). Default 20. */
1049
1066
  vibratoThresholdCents?: number;
1050
- /** Per-frame voiced flags (non-zero = voiced); omit to treat all frames as voiced. */
1051
- voiced?: Int32Array;
1067
+ /** Per-frame voiced flags (truthy = voiced); omit to treat all frames as voiced. */
1068
+ voiced?: VoicedFlags;
1052
1069
  /** Per-frame voicing probability in `[0, 1]`; omit to derive from `voiced`. */
1053
1070
  voicedProb?: Float32Array;
1054
1071
  }
@@ -1352,7 +1369,7 @@ interface PitchCorrectToMidiTimevaryingRequest extends ValidateOptions {
1352
1369
  targetMidi: number;
1353
1370
  sampleRate?: number;
1354
1371
  hopLength?: number;
1355
- voiced?: Int32Array;
1372
+ voiced?: VoicedFlags;
1356
1373
  voicedProb?: Float32Array;
1357
1374
  }
1358
1375
  interface PitchCorrectTimevaryingRequest extends PitchCorrectOptions {
@@ -1452,21 +1469,23 @@ declare function pitchCorrectToMidi(samples: Float32Array, sampleRate?: number,
1452
1469
  * Unlike {@link pitchCorrectToMidi} (a single constant transpose), this follows
1453
1470
  * the caller-supplied per-frame `f0Hz` contour and retunes every voiced frame
1454
1471
  * toward `targetMidi`, so vibrato/drift in the source is tracked rather than
1455
- * flattened. `voiced` (non-zero = voiced) and `voicedProb` ([0,1]) are optional;
1472
+ * flattened. `voiced` (truthy = voiced) and `voicedProb` ([0,1]) are optional;
1456
1473
  * omitting them treats every frame as voiced. An `f0Hz` NaN is accepted only
1457
- * 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.
1458
1477
  *
1459
1478
  * @param samples - Audio samples (mono, float32)
1460
1479
  * @param f0Hz - Per-frame measured F0 in Hz (one entry per analysis frame)
1461
1480
  * @param targetMidi - Desired MIDI note number
1462
1481
  * @param sampleRate - Sample rate in Hz
1463
1482
  * @param hopLength - F0 hop in samples (frame i covers sample i*hopLength)
1464
- * @param voiced - Optional per-frame voiced flags (non-zero = voiced)
1483
+ * @param voiced - Optional per-frame voiced flags (truthy = voiced)
1465
1484
  * @param voicedProb - Optional per-frame voicing probability in [0, 1]
1466
1485
  * @returns Pitch-corrected audio
1467
1486
  */
1468
1487
  declare function pitchCorrectToMidiTimevarying(request: PitchCorrectToMidiTimevaryingRequest): Float32Array;
1469
- 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;
1470
1489
  /**
1471
1490
  * Contour-following pitch correction toward a fixed MIDI note OR a musical
1472
1491
  * scale, with tunable retune strength and vibrato preservation.
@@ -1757,6 +1776,20 @@ interface MasteringStreamingPreviewRequest {
1757
1776
  sampleRate?: number;
1758
1777
  platforms?: StreamingPlatform[];
1759
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
+ }
1760
1793
  /**
1761
1794
  * Apply mastering loudness normalization with a true-peak ceiling.
1762
1795
  *
@@ -1885,6 +1918,34 @@ declare function masteringAudioProfile(request: MasteringSamplesParamsRequest):
1885
1918
  declare function masteringAudioProfile(samples: Float32Array, sampleRate?: number, params?: MasteringProcessorParams): string;
1886
1919
  declare function masteringStreamingPreview(request: MasteringStreamingPreviewRequest): string;
1887
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;
1888
1949
 
1889
1950
  /** Compressor sidechain detector mode. */
1890
1951
  type CompressorDetector = 'peak' | 'rms' | 'log_rms';
@@ -2455,12 +2516,11 @@ interface SynthModRouting {
2455
2516
  *
2456
2517
  * The patch starts from a BASE — the named `preset` (see
2457
2518
  * {@link synthPresetNames}; a `"va:"` routing prefix is accepted) or, when
2458
- * `preset` is omitted, the default subtractive patch. Every numeric field then
2459
- * uses "0 / omit => keep the base value" (non-zero values override, clamped to
2460
- * their audible ranges) and the enum fields reserve `'default'` as keep. The
2461
- * frozen C ABI has no per-field presence bits, so explicit zero numeric
2462
- * overrides (for example `ampSustain: 0`) cannot be represented; they keep the
2463
- * 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.
2464
2524
  *
2465
2525
  * Mode-specific deep parameters (FM operator stacks, modal mode tables,
2466
2526
  * drawbar registrations, kit pieces, piano strings) travel inside the named
@@ -2496,12 +2556,10 @@ interface SynthPatch {
2496
2556
  velToCutoffCents?: number;
2497
2557
  ampAttackMs?: number;
2498
2558
  ampDecayMs?: number;
2499
- /** 0 / omit keeps the base value; explicit zero sustain is not representable. */
2500
2559
  ampSustain?: number;
2501
2560
  ampReleaseMs?: number;
2502
2561
  filterAttackMs?: number;
2503
2562
  filterDecayMs?: number;
2504
- /** 0 / omit keeps the base value; explicit zero sustain is not representable. */
2505
2563
  filterSustain?: number;
2506
2564
  filterReleaseMs?: number;
2507
2565
  lfoRateHz?: number;
@@ -5697,6 +5755,15 @@ declare function meteringSilenceRatio(request: MeteringSilenceRatioRequest): num
5697
5755
  declare function meteringSilenceRatio(samples: Float32Array, sampleRate?: number, thresholdDb?: number, frameLength?: number, hopLength?: number, options?: ValidateOptions): number;
5698
5756
  declare function meteringCrestFactorDb(request: MeteringSamplesRequest): number;
5699
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;
5700
5767
  declare function meteringDcOffset(request: MeteringSamplesRequest): number;
5701
5768
  declare function meteringDcOffset(samples: Float32Array, sampleRate?: number, options?: ValidateOptions): number;
5702
5769
  /**
@@ -7322,4 +7389,4 @@ declare function voiceCharacterPresetId(preset: VoicePresetId | number): VoicePr
7322
7389
  */
7323
7390
  declare function realtimeVoiceChangerPresetConfig(preset: VoicePresetId | number): RealtimeVoiceChangerPodConfig;
7324
7391
 
7325
- 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 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 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 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 };
package/dist/index.js CHANGED
@@ -227,6 +227,13 @@ function assertInterleavedSamples(fnName, samples, channels, validate) {
227
227
  function requireModule() {
228
228
  return getSonareModule();
229
229
  }
230
+ function toVoicedFloat32(voiced) {
231
+ const out = new Float32Array(voiced.length);
232
+ for (let index = 0; index < voiced.length; index += 1) {
233
+ out[index] = voiced[index] ? 1 : 0;
234
+ }
235
+ return out;
236
+ }
230
237
  function resolveEffectFftOptions(fnName, nFft, hopLength) {
231
238
  const resolvedNFft = nFft === void 0 ? 2048 : nFft;
232
239
  const resolvedHopLength = hopLength === void 0 ? 512 : hopLength;
@@ -374,7 +381,7 @@ function pitchCorrectToMidiTimevarying(samples, f0Hz, targetMidi, sampleRate = 2
374
381
  if (request.voicedProb && request.voicedProb.length !== request.f0Hz.length) {
375
382
  throw new RangeError("pitchCorrectToMidiTimevarying: voicedProb length must match f0Hz length");
376
383
  }
377
- const voicedF32 = request.voiced ? Float32Array.from(request.voiced) : void 0;
384
+ const voicedF32 = request.voiced ? toVoicedFloat32(request.voiced) : void 0;
378
385
  return requireModule().pitchCorrectToMidiTimevarying(
379
386
  request.samples,
380
387
  request.sampleRate ?? 22050,
@@ -396,7 +403,7 @@ function pitchCorrectTimevarying(samples, f0Hz, sampleRate = 22050, hopLength =
396
403
  }
397
404
  const nativeOptions = {
398
405
  ...request,
399
- voiced: request.voiced ? Float32Array.from(request.voiced) : void 0
406
+ voiced: request.voiced ? toVoicedFloat32(request.voiced) : void 0
400
407
  };
401
408
  return requireModule().pitchCorrectTimevarying(
402
409
  request.samples,
@@ -856,6 +863,30 @@ function masteringStreamingPreview(samples, sampleRate = 22050, platforms = [])
856
863
  request.platforms ?? []
857
864
  );
858
865
  }
866
+ function masteringAssistantSuggestStereo(request) {
867
+ return requireModule4().masteringAssistantSuggestStereo(
868
+ request.left,
869
+ request.right,
870
+ request.sampleRate ?? 22050,
871
+ request.params ?? {}
872
+ );
873
+ }
874
+ function masteringAudioProfileStereo(request) {
875
+ return requireModule4().masteringAudioProfileStereo(
876
+ request.left,
877
+ request.right,
878
+ request.sampleRate ?? 22050,
879
+ request.params ?? {}
880
+ );
881
+ }
882
+ function masteringStreamingPreviewStereo(request) {
883
+ return requireModule4().masteringStreamingPreviewStereo(
884
+ request.left,
885
+ request.right,
886
+ request.sampleRate ?? 22050,
887
+ request.platforms ?? []
888
+ );
889
+ }
859
890
 
860
891
  // src/mastering_dynamics.ts
861
892
  function requireModule5() {
@@ -3740,6 +3771,15 @@ function meteringCrestFactorDb(samples, sampleRate = 22050, options = {}) {
3740
3771
  assertSamples("meteringCrestFactorDb", request.samples, request.validate !== false);
3741
3772
  return requireModule15().meteringCrestFactorDb(request.samples, request.sampleRate ?? 22050);
3742
3773
  }
3774
+ function meteringCrestFactorDbStereo(request) {
3775
+ assertSamples("meteringCrestFactorDbStereo", request.left, request.validate !== false);
3776
+ assertSamples("meteringCrestFactorDbStereo", request.right, request.validate !== false);
3777
+ return requireModule15().meteringCrestFactorDbStereo(
3778
+ request.left,
3779
+ request.right,
3780
+ request.sampleRate ?? 22050
3781
+ );
3782
+ }
3743
3783
  function meteringDcOffset(samples, sampleRate = 22050, options = {}) {
3744
3784
  const request = samples instanceof Float32Array ? { samples, sampleRate, ...options } : samples;
3745
3785
  assertSamples("meteringDcOffset", request.samples, request.validate !== false);
@@ -7303,7 +7343,9 @@ export {
7303
7343
  masterAudioWithProgress,
7304
7344
  mastering,
7305
7345
  masteringAssistantSuggest,
7346
+ masteringAssistantSuggestStereo,
7306
7347
  masteringAudioProfile,
7348
+ masteringAudioProfileStereo,
7307
7349
  masteringChain,
7308
7350
  masteringChainStereo,
7309
7351
  masteringChainStereoWithProgress,
@@ -7333,12 +7375,14 @@ export {
7333
7375
  masteringStereoAnalysisNames,
7334
7376
  masteringStereoAnalyze,
7335
7377
  masteringStreamingPreview,
7378
+ masteringStreamingPreviewStereo,
7336
7379
  melDelta,
7337
7380
  melSpectrogram,
7338
7381
  melToAudio,
7339
7382
  melToHz,
7340
7383
  melToStft,
7341
7384
  meteringCrestFactorDb,
7385
+ meteringCrestFactorDbStereo,
7342
7386
  meteringDcOffset,
7343
7387
  meteringDetectClipping,
7344
7388
  meteringDynamicRange,