@libraz/libsonare 1.3.3 → 1.4.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 +1 -1
- package/dist/index.js +202 -21
- package/dist/index.js.map +1 -1
- package/dist/sonare-rt-module.js +2 -2
- package/dist/sonare-rt.js +2 -2
- package/dist/sonare-rt.wasm +0 -0
- package/dist/sonare.js +2 -2
- package/dist/sonare.wasm +0 -0
- package/dist/worklet.d.ts +589 -156
- package/dist/worklet.js +622 -110
- package/dist/worklet.js.map +1 -1
- package/package.json +1 -1
- package/src/codes.ts +6 -1
- package/src/effects_mastering.ts +119 -10
- package/src/feature_music.ts +31 -13
- package/src/feature_spectral.ts +7 -1
- package/src/index.ts +14 -0
- package/src/mixer.ts +9 -0
- package/src/project.ts +104 -6
- package/src/public_types.ts +56 -0
- package/src/quick_analysis.ts +18 -14
- package/src/realtime_engine.ts +141 -2
- package/src/realtime_voice_changer.ts +2 -1
- package/src/sonare.js.d.ts +83 -0
- package/src/stream_types.ts +7 -0
- package/src/validation.ts +7 -0
- package/src/worklet/audio_types.ts +2 -0
- package/src/worklet/guards.ts +146 -0
- package/src/worklet/messages.ts +461 -0
- package/src/worklet/protocol.ts +767 -0
- package/src/worklet.ts +541 -1106
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { A as AcousticOptions, a as AcousticResult, b as AnalysisResult, c as AnalyzeBpmOptions, d as AnalyzeDynamicsOptions, e as AnalyzeRhythmOptions, f as AnalyzeSectionsOptions, g as AnalyzeTimbreOptions, h as AnalyzerStats, i as Audio, j as AutomationCurve, B as BarChord, k as Beat, l as BindMicrophoneInputOptions, m as BindWebMidiOptions, n as BpmAnalysisResult, o as BpmCandidate, p as BrowserAudioDecodeOptions, q as BuiltinSynthBinding, r as BuiltinSynthConfig, s as BuiltinSynthWaveform, C as Chord, t as ChordAnalysisResult, u as ChordChange, v as ChordDetectionOptions, w as ChordQuality, x as ChromaResult, y as ClippingRegion, z as ClippingReport, D as CompressorDetector, E as CompressorOptions, F as CqtResult, G as DeclickOptions, H as DeclipOptions, I as DecomposeResult, J as DecrackleMode, K as DecrackleOptions, L as DehumOptions, M as DenoiseClassicalMode, N as DenoiseClassicalNoiseEstimator, O as DenoiseClassicalOptions, P as DereverbClassicalOptions, Q as DynamicRangeReport, R as Dynamics, S as DynamicsAnalysisResult, T as DynamicsResult, U as EXPECTED_ENGINE_ABI_VERSION, V as EXPECTED_PROJECT_ABI_VERSION, W as EngineAutomationPoint, X as EngineBounceOptions, Y as EngineBounceResult, Z as EngineBus, _ as EngineCapabilities, $ as EngineCaptureStatus, a0 as EngineClip, a1 as EngineFreezeOptions, a2 as EngineFreezeResult, a3 as EngineGraphSpec, a4 as EngineMarker, a5 as EngineMeterTelemetry, a6 as EngineMetronomeConfig, a7 as EngineMidiClipSchedule, a8 as EngineMidiEvent, a9 as EngineParameterInfo, aa as EngineTelemetry, ab as EngineTempoSegment, ac as EngineTimeSignatureSegment, ad as EngineTrackLane, ae as EngineTrackSend, af as EngineTransportState, ag as EqBand, ah as EqBandPhase, ai as EqBandType, aj as EqCoeffMode, ak as EqMatchOptions, al as EqSpectrumSnapshot, am as EqStereoPlacement, an as ErrorCode, ao as FrameBuffer, ap as GateOptions, aq as GoniometerPoint, ar as HpssResult, as as HpssWithResidualResult, at as Key, au as KeyCandidate, av as KeyDetectionOptions, aw as KeyProfile, ax as KeyProfileName, ay as LufsResult, az as MasteringChainConfig, aA as MasteringChainResult, aB as MasteringOptions, aC as MasteringPreset, aD as MasteringProcessorParams, aE as MasteringResult, aF as MasteringStereoChainResult, aG as MasteringStereoResult, aH as Matrix2dResult, aI as MelPowerResult, aJ as MelSpectrogramResult, aK as MelodyOptions, aL as MelodyPoint, aM as MelodyResult, aN as MeterTap, aO as MeteringDetectClippingOptions, aP as MeteringDynamicRangeOptions, aQ as MfccResult, aR as MicrophoneInputBinding, aS as MidiCcBindOptions, aT as MidiCcLearnOptions, aU as MixMeterSnapshot, aV as MixOptions, aW as MixResult, aX as Mixer, aY as MixerProcessResult, aZ as MixerRealtimeBuffer, a_ as Mode, a$ as NoteStretchOptions, b0 as OpfsClipPageProviderBinding, b1 as OpfsClipPageProviderOptions, b2 as PairAnalysis, b3 as PairProcessor, b4 as PanLaw, b5 as PanMode, b6 as PatternScore, b7 as PhaseScopeReport, b8 as Pitch, b8 as PitchClass, b9 as PitchResult, ba as ProgressiveEstimate, bb as Project, bc as ProjectAssistSidecar, bd as ProjectAutomationCurve, be as ProjectAutomationLaneDesc, bf as ProjectAutomationPoint, bg as ProjectBounceOptions, bh as ProjectChordSymbol, bi as ProjectClipCompSegment, bj as ProjectClipDesc, bk as ProjectClipFade, bl as ProjectClipTake, bm as ProjectCompileResult, bn as ProjectFadeCurve, bo as ProjectKeySegment, bp as ProjectLoopMode, bq as ProjectLoopRecordingDesc, br as ProjectLoopRecordingResult, bs as ProjectMidiClipResult, bt as ProjectMidiEvent, bu as ProjectNotePairValidation, bv as ProjectTrackDesc, bw as ProjectTrackKind, bx as ProjectWarpAnchor, by as ProjectWarpMapDesc, bz as RealtimeEngine, bA as RealtimeVoiceChanger, bB as RealtimeVoiceChangerConfigInput, bC as RealtimeVoiceChangerInterleavedBuffer, bD as RealtimeVoiceChangerMonoBuffer, bE as RealtimeVoiceChangerPlanarBuffer, bF as RealtimeVoiceChangerPodConfig, bG as RhythmAnalysisResult, bH as RhythmFeatures, bI as RirResult, bJ as RirSynthOptions, bK as RoomEstimateOptions, bL as RoomEstimateResult, bM as RoomGeometryOptions, bN as RoomMorphOptions, bO as SYNTH_BODY_TYPES, bP as SYNTH_ENGINE_MODES, bQ as SYNTH_FILTER_MODELS, bR as SYNTH_FILTER_OUTPUTS, bS as SYNTH_MOD_DESTINATIONS, bT as SYNTH_MOD_SOURCES, bU as SYNTH_OSC_WAVEFORMS, bV as Section, bW as SectionType, bX as SendTiming, bY as Sf2InstrumentConfig, bZ as Sf2ProgramStatus, b_ as SoloProcessor, b$ as SonareError, c0 as SourceBackend, c1 as SpectrumOptions, c2 as SpectrumReport, c3 as StereoAnalysis, c4 as StftPowerResult, c5 as StftResult, c6 as StreamAnalyzer, c7 as StreamConfig, c8 as StreamConfigDefaults, c9 as StreamFramesI16, ca as StreamFramesU8, cb as StreamQuantizeConfig, cc as StreamingEqualizer, cd as StreamingEqualizerConfig, ce as StreamingMasteringChain, cf as StreamingMasteringChainConfig, cg as StreamingPlatform, ch as StreamingRetune, ci as StreamingRetuneConfig, cj as SynthBodyType, ck as SynthEngineMode, cl as SynthEnumTables, cm as SynthFilterModel, cn as SynthFilterOutput, co as SynthModDestination, cp as SynthModRouting, cq as SynthModSource, cr as SynthOscWaveform, cs as SynthPatch, ct as TempogramMode, cu as Timbre, cv as TimbreAnalysisResult, cw as TimbreFrame, cx as TimeSignature, cy as TransientShaperOptions, cz as TrimSilenceMode, cA as TrimSilenceOptions, cB as ValidateOptions, cC as VectorscopeReport, cD as VoiceChangeOptions, cE as VoiceChangeRealtimeOptions, cF as VoicePresetId, cG as WaveformPeakPyramidOptions, cH as WaveformPeaksOptions, cI as WaveformPeaksReport, cJ as WebMidiBinding, cK as WebMidiCcBinding, cL as WebMidiInputInfo, cM as amplitudeToDb, cN as analyze, cO as analyzeBpm, cP as analyzeDynamics, cQ as analyzeImpulseResponse, cR as analyzeMelody, cS as analyzeRhythm, cT as analyzeSections, cU as analyzeTimbre, cV as analyzeWithProgress, cW as bassChroma, cX as bindMicrophoneInput, cY as bindWebMidi, cZ as chordFunctionalAnalysis, c_ as chroma, c$ as chromaCens, d0 as cqt, d1 as createOpfsClipPageProvider, d2 as createOpfsClipPageWorker, d3 as cyclicTempogram, d4 as dbToAmplitude, d5 as dbToPower, d6 as decompose, d7 as decomposeWithInit, d8 as deemphasis, d9 as detectAcoustic, da as detectBeats, db as detectBpm, dc as detectChords, dd as detectDownbeats, de as detectKey, df as detectKeyCandidates, dg as detectOnsets, dh as ebur128LoudnessRange, di as engineAbiVersion, dj as engineCapabilities, dk as estimateRoom, dl as estimateTuning, dm as fixFrames, dn as fixLength, dp as fourierTempogram, dq as frameSignal, dr as framesToSamples, ds as framesToTime, dt as harmonic, du as hasFfmpegSupport, dv as hpss, dw as hpssWithResidual, dx as hybridCqt, dy as hzToMel, dz as hzToMidi, dA as hzToNote, init, isInitialized, dB as isSonareError, dC as isWebMidiAvailable, dD as lufs, dE as lufsInterleaved, dF as masterAudio, dG as masterAudioStereo, dH as masterAudioStereoWithProgress, dI as masterAudioWithProgress, dJ as mastering, dK as masteringAssistantSuggest, dL as masteringAudioProfile, dM as masteringChain, dN as masteringChainStereo, dO as masteringChainStereoWithProgress, dP as masteringChainWithProgress, dQ as masteringDynamicsCompressor, dR as masteringDynamicsGate, dS as masteringDynamicsTransientShaper, dT as masteringInsertNames, dU as masteringInsertParamNames, dV as masteringPairAnalysisNames, dW as masteringPairAnalyze, dX as masteringPairProcess, dY as masteringPairProcessorNames, dZ as masteringPresetNames, d_ as masteringProcess, d$ as masteringProcessStereo, e0 as masteringProcessorNames, e1 as masteringRepairDeclick, e2 as masteringRepairDeclip, e3 as masteringRepairDecrackle, e4 as masteringRepairDehum, e5 as masteringRepairDenoiseClassical, e6 as masteringRepairDereverbClassical, e7 as masteringRepairTrimSilence, e8 as masteringStereoAnalysisNames, e9 as masteringStereoAnalyze, ea as masteringStreamingPreview, eb as melSpectrogram, ec as melToAudio, ed as melToHz, ee as melToStft, ef as meteringCrestFactorDb, eg as meteringDcOffset, eh as meteringDetectClipping, ei as meteringDynamicRange, ej as meteringPeakDb, ek as meteringPhaseScope, el as meteringPhaseScopeDecimated, em as meteringRmsDb, en as meteringSpectrum, eo as meteringSpectrumFrame, ep as meteringStereoCorrelation, eq as meteringStereoWidth, er as meteringTruePeakDb, es as meteringVectorscope, et as meteringVectorscopeDecimated, eu as mfcc, ev as mfccToAudio, ew as mfccToMel, ex as midiToHz, ey as mixStereo, ez as mixingScenePresetJson, eA as mixingScenePresetNames, eB as momentaryLufs, eC as nnFilter, eD as nnlsChroma, eE as normalize, eF as noteStretch, eG as noteToHz, eH as onsetEnvelope, eI as onsetStrengthMulti, eJ as opfsClipPageWorkerSource, eK as padCenter, eL as pcen, eM as peakPick, eN as percussive, eO as phaseVocoder, eP as pitchCorrectToMidi, eQ as pitchCorrectToMidiTimevarying, eR as pitchPyin, eS as pitchShift, eT as pitchTuning, eU as pitchYin, eV as plp, eW as polyFeatures, eX as powerToDb, eY as preemphasis, eZ as projectAbiVersion, e_ as pseudoCqt, e$ as realtimeVoiceChangerPresetConfig, f0 as realtimeVoiceChangerPresetJson, f1 as realtimeVoiceChangerPresetNames, f2 as remix, f3 as resample, f4 as rmsEnergy, f5 as roomMorph, f6 as samplesToFrames, f7 as scaleCorrectionSemitones, f8 as scalePitchClassEnabled, f9 as scaleQuantizeMidi, fa as shortTermLufs, fb as spectralBandwidth, fc as spectralCentroid, fd as spectralContrast, fe as spectralFlatness, ff as spectralRolloff, fg as splitSilence, fh as stft, fi as stftDb, fj as streamAnalyzerConfigDefaults, fk as synthEnumTables, fl as synthPresetNames, fm as synthPresetPatch, fn as synthesizeRir, fo as tempogram, fp as tempogramRatio, fq as timeStretch, fr as timeToFrames, fs as tonnetz, ft as trim, fu as trimSilence, fv as validateRealtimeVoiceChangerPresetJson, fw as vectorNormalize, fx as version, fy as voiceChange, fz as voiceChangeRealtime, fA as voiceChangerAbiVersion, fB as voiceCharacterPresetId, fC as vqt, fD as waveformPeakPyramid, fE as waveformPeaks, fF as zeroCrossingRate, fG as zeroCrossings } from './worklet.js';
|
|
1
|
+
export { A as AcousticOptions, a as AcousticResult, b as AnalysisResult, c as AnalyzeBpmOptions, d as AnalyzeDynamicsOptions, e as AnalyzeRhythmOptions, f as AnalyzeSectionsOptions, g as AnalyzeTimbreOptions, h as AnalyzerStats, i as Audio, j as AutomationCurve, B as BarChord, k as Beat, l as BindMicrophoneInputOptions, m as BindWebMidiOptions, n as BpmAnalysisResult, o as BpmCandidate, p as BrowserAudioDecodeOptions, q as BuiltinSynthBinding, r as BuiltinSynthConfig, s as BuiltinSynthWaveform, C as Chord, t as ChordAnalysisResult, u as ChordChange, v as ChordDetectionOptions, w as ChordQuality, x as ChromaResult, y as ClippingRegion, z as ClippingReport, D as CompressorDetector, E as CompressorOptions, F as CqtResult, G as DeclickOptions, H as DeclipOptions, I as DecomposeResult, J as DecrackleMode, K as DecrackleOptions, L as DehumOptions, M as DenoiseClassicalMode, N as DenoiseClassicalNoiseEstimator, O as DenoiseClassicalOptions, P as DereverbClassicalOptions, Q as DynamicRangeReport, R as Dynamics, S as DynamicsAnalysisResult, T as DynamicsResult, U as EXPECTED_ENGINE_ABI_VERSION, V as EXPECTED_PROJECT_ABI_VERSION, W as EngineAutomationPoint, X as EngineBounceOptions, Y as EngineBounceResult, Z as EngineBus, _ as EngineCapabilities, $ as EngineCaptureStatus, a0 as EngineClip, a1 as EngineFreezeOptions, a2 as EngineFreezeResult, a3 as EngineGraphSpec, a4 as EngineMarker, a5 as EngineMeterTelemetry, a6 as EngineMeterTelemetryWide, a7 as EngineMetronomeConfig, a8 as EngineMidiClipSchedule, a9 as EngineMidiEvent, aa as EngineParameterInfo, ab as EngineScopeTelemetry, ac as EngineTelemetry, ad as EngineTempoSegment, ae as EngineTimeSignatureSegment, af as EngineTrackLane, ag as EngineTrackSend, ah as EngineTransportState, ai as EqBand, aj as EqBandPhase, ak as EqBandType, al as EqCoeffMode, am as EqMatchOptions, an as EqSpectrumSnapshot, ao as EqStereoPlacement, ap as ErrorCode, aq as FrameBuffer, ar as GateOptions, as as GoniometerPoint, at as HpssResult, au as HpssWithResidualResult, av as Key, aw as KeyCandidate, ax as KeyDetectionOptions, ay as KeyProfile, az as KeyProfileName, aA as LufsResult, aB as MarkerKind, aC as MasteringChainConfig, aD as MasteringChainResult, aE as MasteringChannelPolicy, aF as MasteringInsertParamInfo, aG as MasteringOptions, aH as MasteringPreset, aI as MasteringProcessorCatalogEntry, aJ as MasteringProcessorParams, aK as MasteringResult, aL as MasteringStereoChainResult, aM as MasteringStereoResult, aN as Matrix2dResult, aO as MelPowerResult, aP as MelSpectrogramResult, aQ as MelodyOptions, aR as MelodyPoint, aS as MelodyResult, aT as MeterTap, aU as MeteringDetectClippingOptions, aV as MeteringDynamicRangeOptions, aW as MfccResult, aX as MicrophoneInputBinding, aY as MidiCcBindOptions, aZ as MidiCcLearnOptions, a_ as MixMeterSnapshot, a$ as MixOptions, b0 as MixResult, b1 as Mixer, b2 as MixerProcessResult, b3 as MixerRealtimeBuffer, b4 as Mode, b5 as NoteStretchOptions, b6 as OpfsClipPageProviderBinding, b7 as OpfsClipPageProviderOptions, b8 as PairAnalysis, b9 as PairProcessor, ba as PanLaw, bb as PanMode, bc as PatternScore, bd as PhaseScopeReport, be as Pitch, be as PitchClass, bf as PitchResult, bg as ProgressiveEstimate, bh as Project, bi as ProjectAssistSidecar, bj as ProjectAutomationCurve, bk as ProjectAutomationLaneDesc, bl as ProjectAutomationPoint, bm as ProjectBounceOptions, bn as ProjectChordSymbol, bo as ProjectClipCompSegment, bp as ProjectClipDesc, bq as ProjectClipFade, br as ProjectClipTake, bs as ProjectCompileResult, bt as ProjectFadeCurve, bu as ProjectKeySegment, bv as ProjectLoopMode, bw as ProjectLoopRecordingDesc, bx as ProjectLoopRecordingResult, by as ProjectMarker, bz as ProjectMidiClipResult, bA as ProjectMidiEvent, bB as ProjectNotePairValidation, bC as ProjectTrackDesc, bD as ProjectTrackKind, bE as ProjectWarpAnchor, bF as ProjectWarpMapDesc, bG as RealtimeEngine, bH as RealtimeVoiceChanger, bI as RealtimeVoiceChangerConfigInput, bJ as RealtimeVoiceChangerInterleavedBuffer, bK as RealtimeVoiceChangerMonoBuffer, bL as RealtimeVoiceChangerPlanarBuffer, bM as RealtimeVoiceChangerPodConfig, bN as RhythmAnalysisResult, bO as RhythmFeatures, bP as RirResult, bQ as RirSynthOptions, bR as RoomEstimateOptions, bS as RoomEstimateResult, bT as RoomGeometryOptions, bU as RoomMorphOptions, bV as SYNTH_BODY_TYPES, bW as SYNTH_ENGINE_MODES, bX as SYNTH_FILTER_MODELS, bY as SYNTH_FILTER_OUTPUTS, bZ as SYNTH_MOD_DESTINATIONS, b_ as SYNTH_MOD_SOURCES, b$ as SYNTH_OSC_WAVEFORMS, c0 as Section, c1 as SectionType, c2 as SendTiming, c3 as Sf2InstrumentConfig, c4 as Sf2ProgramStatus, c5 as SoloProcessor, c6 as SonareError, c7 as SourceBackend, c8 as SpectralEditMode, c9 as SpectralEditOptions, ca as SpectralEditWindow, cb as SpectralRegionOp, cc as SpectrumOptions, cd as SpectrumReport, ce as StereoAnalysis, cf as StftPowerResult, cg as StftResult, ch as StreamAnalyzer, ci as StreamConfig, cj as StreamConfigDefaults, ck as StreamFramesI16, cl as StreamFramesU8, cm as StreamQuantizeConfig, cn as StreamingEqualizer, co as StreamingEqualizerConfig, cp as StreamingMasteringChain, cq as StreamingMasteringChainConfig, cr as StreamingPlatform, cs as StreamingRetune, ct as StreamingRetuneConfig, cu as SynthBodyType, cv as SynthEngineMode, cw as SynthEnumTables, cx as SynthFilterModel, cy as SynthFilterOutput, cz as SynthModDestination, cA as SynthModRouting, cB as SynthModSource, cC as SynthOscWaveform, cD as SynthPatch, cE as TempogramMode, cF as Timbre, cG as TimbreAnalysisResult, cH as TimbreFrame, cI as TimeSignature, cJ as TransientShaperOptions, cK as TrimSilenceMode, cL as TrimSilenceOptions, cM as ValidateOptions, cN as VectorscopeReport, cO as VoiceChangeOptions, cP as VoiceChangeRealtimeOptions, cQ as VoicePresetId, cR as WaveformPeakPyramidOptions, cS as WaveformPeaksOptions, cT as WaveformPeaksReport, cU as WebMidiBinding, cV as WebMidiCcBinding, cW as WebMidiInputInfo, cX as amplitudeToDb, cY as analyze, cZ as analyzeBpm, c_ as analyzeDynamics, c$ as analyzeImpulseResponse, d0 as analyzeMelody, d1 as analyzeRhythm, d2 as analyzeSections, d3 as analyzeTimbre, d4 as analyzeWithProgress, d5 as bassChroma, d6 as bindMicrophoneInput, d7 as bindWebMidi, d8 as chordFunctionalAnalysis, d9 as chroma, da as chromaCens, db as cqt, dc as createOpfsClipPageProvider, dd as createOpfsClipPageWorker, de as cyclicTempogram, df as dbToAmplitude, dg as dbToPower, dh as decompose, di as decomposeWithInit, dj as deemphasis, dk as detectAcoustic, dl as detectBeats, dm as detectBpm, dn as detectChords, dp as detectDownbeats, dq as detectKey, dr as detectKeyCandidates, ds as detectOnsets, dt as ebur128LoudnessRange, du as engineAbiVersion, dv as engineCapabilities, dw as estimateRoom, dx as estimateTuning, dy as fixFrames, dz as fixLength, dA as fourierTempogram, dB as frameSignal, dC as framesToSamples, dD as framesToTime, dE as harmonic, dF as hasFfmpegSupport, dG as hpss, dH as hpssWithResidual, dI as hybridCqt, dJ as hzToMel, dK as hzToMidi, dL as hzToNote, init, isInitialized, dM as isSonareError, dN as isWebMidiAvailable, dO as lufs, dP as lufsInterleaved, dQ as masterAudio, dR as masterAudioStereo, dS as masterAudioStereoWithProgress, dT as masterAudioWithProgress, dU as mastering, dV as masteringAssistantSuggest, dW as masteringAudioProfile, dX as masteringChain, dY as masteringChainStereo, dZ as masteringChainStereoWithProgress, d_ as masteringChainWithProgress, d$ as masteringDynamicsCompressor, e0 as masteringDynamicsGate, e1 as masteringDynamicsTransientShaper, e2 as masteringInsertNames, e3 as masteringInsertParamInfo, e4 as masteringInsertParamNames, e5 as masteringPairAnalysisNames, e6 as masteringPairAnalyze, e7 as masteringPairProcess, e8 as masteringPairProcessorNames, e9 as masteringPresetNames, ea as masteringProcess, eb as masteringProcessStereo, ec as masteringProcessorCatalog, ed as masteringProcessorNames, ee as masteringRepairDeclick, ef as masteringRepairDeclip, eg as masteringRepairDecrackle, eh as masteringRepairDehum, ei as masteringRepairDenoiseClassical, ej as masteringRepairDereverbClassical, ek as masteringRepairTrimSilence, el as masteringStereoAnalysisNames, em as masteringStereoAnalyze, en as masteringStreamingPreview, eo as melSpectrogram, ep as melToAudio, eq as melToHz, er as melToStft, es as meteringCrestFactorDb, et as meteringDcOffset, eu as meteringDetectClipping, ev as meteringDynamicRange, ew as meteringPeakDb, ex as meteringPhaseScope, ey as meteringPhaseScopeDecimated, ez as meteringRmsDb, eA as meteringSpectrum, eB as meteringSpectrumFrame, eC as meteringStereoCorrelation, eD as meteringStereoWidth, eE as meteringTruePeakDb, eF as meteringVectorscope, eG as meteringVectorscopeDecimated, eH as mfcc, eI as mfccToAudio, eJ as mfccToMel, eK as midiToHz, eL as mixStereo, eM as mixingScenePresetJson, eN as mixingScenePresetNames, eO as momentaryLufs, eP as nnFilter, eQ as nnlsChroma, eR as normalize, eS as noteStretch, eT as noteToHz, eU as onsetEnvelope, eV as onsetStrengthMulti, eW as opfsClipPageWorkerSource, eX as padCenter, eY as pcen, eZ as peakPick, e_ as percussive, e$ as phaseVocoder, f0 as pitchCorrectToMidi, f1 as pitchCorrectToMidiTimevarying, f2 as pitchPyin, f3 as pitchShift, f4 as pitchTuning, f5 as pitchYin, f6 as plp, f7 as polyFeatures, f8 as powerToDb, f9 as preemphasis, fa as projectAbiVersion, fb as pseudoCqt, fc as realtimeVoiceChangerPresetConfig, fd as realtimeVoiceChangerPresetJson, fe as realtimeVoiceChangerPresetNames, ff as remix, fg as resample, fh as rmsEnergy, fi as roomMorph, fj as samplesToFrames, fk as scaleCorrectionSemitones, fl as scalePitchClassEnabled, fm as scaleQuantizeMidi, fn as shortTermLufs, fo as spectralBandwidth, fp as spectralCentroid, fq as spectralContrast, fr as spectralEdit, fs as spectralFlatness, ft as spectralRolloff, fu as splitSilence, fv as stft, fw as stftDb, fx as streamAnalyzerConfigDefaults, fy as synthEnumTables, fz as synthPresetNames, fA as synthPresetPatch, fB as synthesizeRir, fC as tempogram, fD as tempogramRatio, fE as timeStretch, fF as timeToFrames, fG as tonnetz, fH as trim, fI as trimSilence, fJ as validateRealtimeVoiceChangerPresetJson, fK as vectorNormalize, fL as version, fM as voiceChange, fN as voiceChangeRealtime, fO as voiceChangerAbiVersion, fP as voiceCharacterPresetId, fQ as vqt, fR as waveformPeakPyramid, fS as waveformPeaks, fT as zeroCrossingRate, fU as zeroCrossings } from './worklet.js';
|
|
2
2
|
export { ProgressCallback } from './sonare.js';
|
package/dist/index.js
CHANGED
|
@@ -214,7 +214,10 @@ function meterTapCode(tap) {
|
|
|
214
214
|
return tap === "preFader" || tap === 0 ? 0 : 1;
|
|
215
215
|
}
|
|
216
216
|
function sendTimingCode(timing) {
|
|
217
|
-
|
|
217
|
+
if (typeof timing === "number") {
|
|
218
|
+
return timing;
|
|
219
|
+
}
|
|
220
|
+
return timing === "preFader" ? 1 : 0;
|
|
218
221
|
}
|
|
219
222
|
|
|
220
223
|
// src/mixer.ts
|
|
@@ -467,6 +470,13 @@ var Mixer = class _Mixer {
|
|
|
467
470
|
setDualPan(stripIndex, leftPan, rightPan) {
|
|
468
471
|
this.mixer.setDualPan(stripIndex, leftPan, rightPan);
|
|
469
472
|
}
|
|
473
|
+
/**
|
|
474
|
+
* Set the strip's surround pan position, used when it feeds a >2-channel bus.
|
|
475
|
+
* Stored on the scene; inert until the surround DSP path applies it.
|
|
476
|
+
*/
|
|
477
|
+
setSurroundPan(stripIndex, pan) {
|
|
478
|
+
this.mixer.setSurroundPan(stripIndex, pan);
|
|
479
|
+
}
|
|
470
480
|
/**
|
|
471
481
|
* Add a send to a strip after construction.
|
|
472
482
|
*
|
|
@@ -791,7 +801,7 @@ var RealtimeVoiceChanger = class {
|
|
|
791
801
|
}
|
|
792
802
|
};
|
|
793
803
|
function realtimeVoiceChangerPresetNames() {
|
|
794
|
-
return getSonareModule().realtimeVoiceChangerPresetNames();
|
|
804
|
+
return Array.from(getSonareModule().realtimeVoiceChangerPresetNames());
|
|
795
805
|
}
|
|
796
806
|
function realtimeVoiceChangerPresetJson(name) {
|
|
797
807
|
return getSonareModule().realtimeVoiceChangerPresetJson(name);
|
|
@@ -1169,32 +1179,50 @@ function normalize(samples, sampleRate, targetDb = 0, options = {}) {
|
|
|
1169
1179
|
assertSamples("normalize", samples, options.validate !== false);
|
|
1170
1180
|
return requireModule().normalize(samples, sampleRate, targetDb);
|
|
1171
1181
|
}
|
|
1182
|
+
function spectralEdit(samples, sampleRate, ops = [], options = {}) {
|
|
1183
|
+
assertSamples("spectralEdit", samples, options.validate !== false);
|
|
1184
|
+
assertSampleRate("spectralEdit", sampleRate);
|
|
1185
|
+
return requireModule().spectralEdit(samples, sampleRate, ops, options);
|
|
1186
|
+
}
|
|
1172
1187
|
function mastering(samples, sampleRate = 22050, options = {}) {
|
|
1173
1188
|
return requireModule().mastering(
|
|
1174
1189
|
samples,
|
|
1175
1190
|
sampleRate,
|
|
1176
1191
|
options.targetLufs ?? -14,
|
|
1177
1192
|
options.ceilingDb ?? -1,
|
|
1178
|
-
options.truePeakOversample ?? 4
|
|
1193
|
+
options.truePeakOversample ?? 4,
|
|
1194
|
+
options.releaseMs ?? 0,
|
|
1195
|
+
// 0 => library default (50 ms)
|
|
1196
|
+
options.applyGainAtInputRate ?? false
|
|
1179
1197
|
);
|
|
1180
1198
|
}
|
|
1181
1199
|
function masteringProcessorNames() {
|
|
1182
|
-
return requireModule().masteringProcessorNames();
|
|
1200
|
+
return Array.from(requireModule().masteringProcessorNames());
|
|
1183
1201
|
}
|
|
1184
1202
|
function masteringInsertNames() {
|
|
1185
1203
|
return requireModule().masteringInsertNames();
|
|
1186
1204
|
}
|
|
1187
1205
|
function masteringInsertParamNames(name) {
|
|
1188
|
-
return
|
|
1206
|
+
return Array.from(
|
|
1207
|
+
requireModule().masteringInsertParamNames(name)
|
|
1208
|
+
);
|
|
1209
|
+
}
|
|
1210
|
+
function masteringInsertParamInfo(name) {
|
|
1211
|
+
const json = requireModule().masteringInsertParamInfo(name);
|
|
1212
|
+
return JSON.parse(json);
|
|
1213
|
+
}
|
|
1214
|
+
function masteringProcessorCatalog() {
|
|
1215
|
+
const json = requireModule().masteringProcessorCatalog();
|
|
1216
|
+
return JSON.parse(json);
|
|
1189
1217
|
}
|
|
1190
1218
|
function masteringPairProcessorNames() {
|
|
1191
|
-
return requireModule().masteringPairProcessorNames();
|
|
1219
|
+
return Array.from(requireModule().masteringPairProcessorNames());
|
|
1192
1220
|
}
|
|
1193
1221
|
function masteringPairAnalysisNames() {
|
|
1194
|
-
return requireModule().masteringPairAnalysisNames();
|
|
1222
|
+
return Array.from(requireModule().masteringPairAnalysisNames());
|
|
1195
1223
|
}
|
|
1196
1224
|
function masteringStereoAnalysisNames() {
|
|
1197
|
-
return requireModule().masteringStereoAnalysisNames();
|
|
1225
|
+
return Array.from(requireModule().masteringStereoAnalysisNames());
|
|
1198
1226
|
}
|
|
1199
1227
|
function masteringProcess(processorName, samples, sampleRate = 22050, params = {}) {
|
|
1200
1228
|
return requireModule().masteringProcess(processorName, samples, sampleRate, params);
|
|
@@ -1301,7 +1329,7 @@ function masteringChainStereoWithProgress(left, right, sampleRate = 22050, confi
|
|
|
1301
1329
|
);
|
|
1302
1330
|
}
|
|
1303
1331
|
function masteringPresetNames() {
|
|
1304
|
-
return requireModule().masteringPresetNames();
|
|
1332
|
+
return Array.from(requireModule().masteringPresetNames());
|
|
1305
1333
|
}
|
|
1306
1334
|
function masterAudio(samples, sampleRate = 22050, presetName = "pop", overrides = {}) {
|
|
1307
1335
|
return requireModule().masterAudio(presetName, samples, sampleRate, overrides);
|
|
@@ -1335,7 +1363,7 @@ function masterAudioStereoWithProgress(left, right, sampleRate = 22050, presetNa
|
|
|
1335
1363
|
);
|
|
1336
1364
|
}
|
|
1337
1365
|
function mixingScenePresetNames() {
|
|
1338
|
-
return requireModule().mixingScenePresetNames();
|
|
1366
|
+
return Array.from(requireModule().mixingScenePresetNames());
|
|
1339
1367
|
}
|
|
1340
1368
|
function mixingScenePresetJson(presetName) {
|
|
1341
1369
|
return requireModule().mixingScenePresetJson(presetName);
|
|
@@ -1518,24 +1546,32 @@ function analyzeSections(samples, sampleRate = 22050, options = {}) {
|
|
|
1518
1546
|
if ((options.minSectionSec ?? 4) <= 0) {
|
|
1519
1547
|
throw new RangeError("analyzeSections: minSectionSec must be positive");
|
|
1520
1548
|
}
|
|
1521
|
-
|
|
1549
|
+
const sections = requireModule3().analyzeSections(
|
|
1522
1550
|
samples,
|
|
1523
1551
|
sampleRate,
|
|
1524
1552
|
options.nFft ?? 2048,
|
|
1525
1553
|
options.hopLength ?? 512,
|
|
1526
1554
|
options.minSectionSec ?? 4
|
|
1527
|
-
)
|
|
1555
|
+
);
|
|
1556
|
+
return Array.from(sections, (s) => ({ ...s, type: s.type }));
|
|
1528
1557
|
}
|
|
1529
1558
|
function analyzeMelody(samples, sampleRate = 22050, options = {}) {
|
|
1530
1559
|
validateMusicSamples("analyzeMelody", samples, sampleRate, options);
|
|
1531
1560
|
const fmin = options.fmin ?? 65;
|
|
1532
1561
|
const fmax = options.fmax ?? 2093;
|
|
1533
1562
|
validateFrequencyBounds("analyzeMelody", fmin, fmax);
|
|
1563
|
+
if (fmin <= 0) {
|
|
1564
|
+
throw new RangeError("analyzeMelody: fmin must be positive");
|
|
1565
|
+
}
|
|
1534
1566
|
validatePositiveIntegers("analyzeMelody", {
|
|
1535
1567
|
frameLength: options.frameLength ?? 2048,
|
|
1536
1568
|
hopLength: options.hopLength ?? 256
|
|
1537
1569
|
});
|
|
1538
|
-
|
|
1570
|
+
const threshold = options.threshold ?? 0.1;
|
|
1571
|
+
assertFiniteScalar("analyzeMelody", threshold, "threshold");
|
|
1572
|
+
if (threshold <= 0) {
|
|
1573
|
+
throw new RangeError("analyzeMelody: threshold must be positive");
|
|
1574
|
+
}
|
|
1539
1575
|
return requireModule3().analyzeMelody(
|
|
1540
1576
|
samples,
|
|
1541
1577
|
sampleRate,
|
|
@@ -2085,7 +2121,7 @@ function detectKey(samples, sampleRate = 22050, options = {}) {
|
|
|
2085
2121
|
}
|
|
2086
2122
|
function detectKeyCandidates(samples, sampleRate = 22050, options = {}) {
|
|
2087
2123
|
validateAnalysisInput("detectKeyCandidates", samples, sampleRate, options);
|
|
2088
|
-
|
|
2124
|
+
const candidates = requireModule8()._detectKeyCandidates(
|
|
2089
2125
|
samples,
|
|
2090
2126
|
sampleRate,
|
|
2091
2127
|
options.nFft ?? 4096,
|
|
@@ -2096,7 +2132,8 @@ function detectKeyCandidates(samples, sampleRate = 22050, options = {}) {
|
|
|
2096
2132
|
keyModeValues(options.modes),
|
|
2097
2133
|
keyProfileValue(options.profile),
|
|
2098
2134
|
options.genreHint ?? ""
|
|
2099
|
-
)
|
|
2135
|
+
);
|
|
2136
|
+
return Array.from(candidates, convertKeyCandidate);
|
|
2100
2137
|
}
|
|
2101
2138
|
function detectOnsets(samples, sampleRate = 22050, options = {}) {
|
|
2102
2139
|
validateAnalysisInput("detectOnsets", samples, sampleRate, options);
|
|
@@ -2864,6 +2901,13 @@ function createOpfsClipPageProvider(engine, options) {
|
|
|
2864
2901
|
|
|
2865
2902
|
// src/project.ts
|
|
2866
2903
|
var EXPECTED_PROJECT_ABI_VERSION = 1;
|
|
2904
|
+
var MarkerKind = {
|
|
2905
|
+
marker: 0,
|
|
2906
|
+
text: 1,
|
|
2907
|
+
lyric: 2,
|
|
2908
|
+
cuePoint: 3,
|
|
2909
|
+
keySignature: 4
|
|
2910
|
+
};
|
|
2867
2911
|
var SYNTH_ENGINE_MODES = [
|
|
2868
2912
|
"default",
|
|
2869
2913
|
"subtractive",
|
|
@@ -2977,10 +3021,10 @@ function projectAbiVersion() {
|
|
|
2977
3021
|
return projectModule().projectAbiVersion();
|
|
2978
3022
|
}
|
|
2979
3023
|
function synthPresetNames() {
|
|
2980
|
-
return projectModule().synthPresetNames();
|
|
3024
|
+
return Array.from(projectModule().synthPresetNames());
|
|
2981
3025
|
}
|
|
2982
3026
|
function synthPresetPatch(name) {
|
|
2983
|
-
return projectModule().synthPresetPatch(name);
|
|
3027
|
+
return { ...projectModule().synthPresetPatch(name) };
|
|
2984
3028
|
}
|
|
2985
3029
|
function synthEnumTables() {
|
|
2986
3030
|
return projectModule()._synthEnumTables();
|
|
@@ -3203,6 +3247,22 @@ var Project = class _Project {
|
|
|
3203
3247
|
setTrackMidiDestination(trackId, destinationId) {
|
|
3204
3248
|
this.native.setTrackMidiDestination(trackId, destinationId);
|
|
3205
3249
|
}
|
|
3250
|
+
/** Set a track's linear playback gain (1.0 = unity; >= 0) via an undoable edit. */
|
|
3251
|
+
setTrackGain(trackId, gain) {
|
|
3252
|
+
this.native.setTrackGain(trackId, gain);
|
|
3253
|
+
}
|
|
3254
|
+
/** Set a track's mute flag via an undoable edit (a muted track is silent). */
|
|
3255
|
+
setTrackMute(trackId, mute) {
|
|
3256
|
+
this.native.setTrackMute(trackId, mute);
|
|
3257
|
+
}
|
|
3258
|
+
/** Set a track's solo flag via an undoable edit (when any track is soloed, only soloed tracks sound). */
|
|
3259
|
+
setTrackSolo(trackId, solo) {
|
|
3260
|
+
this.native.setTrackSolo(trackId, solo);
|
|
3261
|
+
}
|
|
3262
|
+
/** Set a track's stereo balance in [-1, +1] (0 = center) via an undoable edit. */
|
|
3263
|
+
setTrackPan(trackId, pan) {
|
|
3264
|
+
this.native.setTrackPan(trackId, pan);
|
|
3265
|
+
}
|
|
3206
3266
|
/** Undo the most recent edit. */
|
|
3207
3267
|
undo() {
|
|
3208
3268
|
this.native.undo();
|
|
@@ -3400,9 +3460,18 @@ var Project = class _Project {
|
|
|
3400
3460
|
setClipCompSegments(clipId, segments) {
|
|
3401
3461
|
this.native.setClipCompSegments(clipId, segments);
|
|
3402
3462
|
}
|
|
3403
|
-
/**
|
|
3404
|
-
|
|
3405
|
-
|
|
3463
|
+
/**
|
|
3464
|
+
* Set a clip's loop mode + loop length in PPQ (undoable). `loopCrossfadePpq`
|
|
3465
|
+
* is an optional equal-power crossfade at the loop seam (PPQ, finite and >= 0;
|
|
3466
|
+
* 0 = hard loop); the engine clamps it to the clip's pre-roll and half the loop.
|
|
3467
|
+
*/
|
|
3468
|
+
setClipLoop(clipId, loopMode, loopLengthPpq = 0, loopCrossfadePpq = 0) {
|
|
3469
|
+
this.native.setClipLoop(
|
|
3470
|
+
clipId,
|
|
3471
|
+
projectLoopModeValue(loopMode),
|
|
3472
|
+
loopLengthPpq,
|
|
3473
|
+
loopCrossfadePpq
|
|
3474
|
+
);
|
|
3406
3475
|
}
|
|
3407
3476
|
/** Rebind a clip to a different (already-registered) source (undoable). */
|
|
3408
3477
|
setClipSource(clipId, sourceId) {
|
|
@@ -3492,6 +3561,22 @@ var Project = class _Project {
|
|
|
3492
3561
|
setMarker(markerId, ppq, name) {
|
|
3493
3562
|
return this.native.setMarker(markerId, ppq, name);
|
|
3494
3563
|
}
|
|
3564
|
+
/**
|
|
3565
|
+
* Add or replace a marker from a full {@link ProjectMarker}, including its
|
|
3566
|
+
* {@link MarkerKind} and (for key signatures) the key. Pass `id` 0 to allocate
|
|
3567
|
+
* a new id; returns the stable marker id.
|
|
3568
|
+
*/
|
|
3569
|
+
setMarkerEx(marker) {
|
|
3570
|
+
return this.native.setMarkerEx(marker);
|
|
3571
|
+
}
|
|
3572
|
+
/** Read a project marker by index (0-based, in stored order). */
|
|
3573
|
+
markerByIndex(index) {
|
|
3574
|
+
return this.native.markerByIndex(index);
|
|
3575
|
+
}
|
|
3576
|
+
/** Number of markers in the project. */
|
|
3577
|
+
markerCount() {
|
|
3578
|
+
return this.native.markerCount();
|
|
3579
|
+
}
|
|
3495
3580
|
/** Number of tracks in the project. */
|
|
3496
3581
|
trackCount() {
|
|
3497
3582
|
return this.native.trackCount();
|
|
@@ -3747,6 +3832,15 @@ var RealtimeEngine = class {
|
|
|
3747
3832
|
seekSample(timelineSample, renderFrame = -1) {
|
|
3748
3833
|
this.native.seekSample(timelineSample, renderFrame);
|
|
3749
3834
|
}
|
|
3835
|
+
/**
|
|
3836
|
+
* Snaps every in-flight parameter ramp (engine-level smoothed params, mixer
|
|
3837
|
+
* lane fader/pan/gate, bus gains) to its target value. Offline renders call
|
|
3838
|
+
* this after a priming process() block so the first audible block renders at
|
|
3839
|
+
* settled values instead of ramping in from defaults.
|
|
3840
|
+
*/
|
|
3841
|
+
settleParameters() {
|
|
3842
|
+
this.native.settleParameters();
|
|
3843
|
+
}
|
|
3750
3844
|
seekPpq(ppq, renderFrame = -1) {
|
|
3751
3845
|
this.native.seekPpq(ppq, renderFrame);
|
|
3752
3846
|
}
|
|
@@ -3835,9 +3929,31 @@ var RealtimeEngine = class {
|
|
|
3835
3929
|
}
|
|
3836
3930
|
setTrackLanes(lanes) {
|
|
3837
3931
|
this.native.setTrackLanes(
|
|
3838
|
-
lanes.map((lane) =>
|
|
3932
|
+
lanes.map((lane) => {
|
|
3933
|
+
if (typeof lane === "number") {
|
|
3934
|
+
return { trackId: lane };
|
|
3935
|
+
}
|
|
3936
|
+
if (!lane.sends) {
|
|
3937
|
+
return lane;
|
|
3938
|
+
}
|
|
3939
|
+
return {
|
|
3940
|
+
...lane,
|
|
3941
|
+
sends: lane.sends.map((send) => ({
|
|
3942
|
+
...send,
|
|
3943
|
+
// Post-fader (0) is the default for an omitted sendTiming.
|
|
3944
|
+
sendTiming: send.sendTiming === void 0 ? 0 : sendTimingCode(send.sendTiming)
|
|
3945
|
+
}))
|
|
3946
|
+
};
|
|
3947
|
+
})
|
|
3839
3948
|
);
|
|
3840
3949
|
}
|
|
3950
|
+
/**
|
|
3951
|
+
* Keys one insert of a lane strip from another lane's post-strip audio
|
|
3952
|
+
* (ducking/sidechainRouter inserts). sourceTrackId 0 removes the binding.
|
|
3953
|
+
*/
|
|
3954
|
+
setLaneSidechain(trackId, insertIndex, sourceTrackId) {
|
|
3955
|
+
this.native.setLaneSidechain(trackId, insertIndex, sourceTrackId);
|
|
3956
|
+
}
|
|
3841
3957
|
setTrackBuses(buses) {
|
|
3842
3958
|
this.native.setTrackBuses(buses);
|
|
3843
3959
|
}
|
|
@@ -3893,6 +4009,43 @@ var RealtimeEngine = class {
|
|
|
3893
4009
|
setMasterStripInsertBypassed(insertIndex, bypassed, resetOnBypass = false) {
|
|
3894
4010
|
this.native.setMasterStripInsertBypassed(insertIndex, bypassed, resetOnBypass);
|
|
3895
4011
|
}
|
|
4012
|
+
/**
|
|
4013
|
+
* Changes one track-strip insert parameter in realtime, addressed by the
|
|
4014
|
+
* processor's JSON-key parameter name (see {@link masteringInsertParamInfo}).
|
|
4015
|
+
* Applied at the next block head via the engine command queue; safe during
|
|
4016
|
+
* playback. Throws if the track, insert, or name is unknown, the param is not
|
|
4017
|
+
* realtime-safe, or the command queue is full.
|
|
4018
|
+
*/
|
|
4019
|
+
setTrackStripInsertParamByName(trackId, insertIndex, paramName, value) {
|
|
4020
|
+
this.native.setTrackStripInsertParamByName(trackId, insertIndex, paramName, value);
|
|
4021
|
+
}
|
|
4022
|
+
/** Master-strip counterpart of {@link setTrackStripInsertParamByName}. */
|
|
4023
|
+
setMasterStripInsertParamByName(insertIndex, paramName, value) {
|
|
4024
|
+
this.native.setMasterStripInsertParamByName(insertIndex, paramName, value);
|
|
4025
|
+
}
|
|
4026
|
+
/** Sets a track lane strip's pan position in realtime (glitch-free). */
|
|
4027
|
+
setTrackStripPan(trackId, pan) {
|
|
4028
|
+
this.native.setTrackStripPan(trackId, pan);
|
|
4029
|
+
}
|
|
4030
|
+
/** Sets a track lane strip's pan law in realtime. */
|
|
4031
|
+
setTrackStripPanLaw(trackId, panLaw) {
|
|
4032
|
+
this.native.setTrackStripPanLaw(trackId, panLawCode(panLaw));
|
|
4033
|
+
}
|
|
4034
|
+
/** Sets a track lane strip's pan mode in realtime. */
|
|
4035
|
+
setTrackStripPanMode(trackId, panMode) {
|
|
4036
|
+
this.native.setTrackStripPanMode(trackId, panModeCode(panMode));
|
|
4037
|
+
}
|
|
4038
|
+
/** Sets a track lane strip's dual-pan left/right positions in realtime. */
|
|
4039
|
+
setTrackStripDualPan(trackId, leftPan, rightPan) {
|
|
4040
|
+
this.native.setTrackStripDualPan(trackId, leftPan, rightPan);
|
|
4041
|
+
}
|
|
4042
|
+
/**
|
|
4043
|
+
* Sets a track lane strip's inter-channel alignment delay (whole samples).
|
|
4044
|
+
* Adjusts strip latency, so PDC and reported graph latency are refreshed.
|
|
4045
|
+
*/
|
|
4046
|
+
setTrackStripChannelDelaySamples(trackId, delaySamples) {
|
|
4047
|
+
this.native.setTrackStripChannelDelaySamples(trackId, delaySamples);
|
|
4048
|
+
}
|
|
3896
4049
|
createClipPageProvider(numChannels, numSamples, pageFrames) {
|
|
3897
4050
|
const id = this.native.createClipPageProvider(numChannels, numSamples, pageFrames);
|
|
3898
4051
|
return new ClipPageProvider(this, id);
|
|
@@ -3982,6 +4135,30 @@ var RealtimeEngine = class {
|
|
|
3982
4135
|
drainMeterTelemetry(maxRecords = 1024) {
|
|
3983
4136
|
return this.native.drainMeterTelemetry(maxRecords);
|
|
3984
4137
|
}
|
|
4138
|
+
/**
|
|
4139
|
+
* Drains pending meter telemetry as per-plane (wide) records for a surround
|
|
4140
|
+
* target. Use this for a surround mix target; {@link drainMeterTelemetry}
|
|
4141
|
+
* stays the stereo fast path. The two share one queue — call only one per
|
|
4142
|
+
* target. The live AudioWorklet path owns the queue via the stereo drain, so
|
|
4143
|
+
* this wide drain is for an offline (non-worklet) engine instance; per-plane
|
|
4144
|
+
* surround meters are not delivered over the live worklet meter ring.
|
|
4145
|
+
*/
|
|
4146
|
+
drainMeterTelemetryWide(maxRecords = 1024) {
|
|
4147
|
+
return this.native.drainMeterTelemetryWide(maxRecords);
|
|
4148
|
+
}
|
|
4149
|
+
/**
|
|
4150
|
+
* Enables per-target spectrum + vectorscope capture. @param intervalFrames is
|
|
4151
|
+
* the minimum render-frame gap between snapshots (0 disables). @param bandCount
|
|
4152
|
+
* is the FFT band resolution (1..64); changing it re-prepares the tap. Returns
|
|
4153
|
+
* the band count actually applied.
|
|
4154
|
+
*/
|
|
4155
|
+
configureScopeTelemetry(intervalFrames, bandCount) {
|
|
4156
|
+
return this.native.configureScopeTelemetry(intervalFrames, bandCount);
|
|
4157
|
+
}
|
|
4158
|
+
/** Drains pending spectrum + vectorscope snapshots (per mix target). */
|
|
4159
|
+
drainScopeTelemetry(maxRecords = 1024) {
|
|
4160
|
+
return this.native.drainScopeTelemetry(maxRecords);
|
|
4161
|
+
}
|
|
3985
4162
|
destroy() {
|
|
3986
4163
|
this.native.delete();
|
|
3987
4164
|
}
|
|
@@ -4554,6 +4731,7 @@ export {
|
|
|
4554
4731
|
EXPECTED_PROJECT_ABI_VERSION,
|
|
4555
4732
|
ErrorCode,
|
|
4556
4733
|
KeyProfile,
|
|
4734
|
+
MarkerKind,
|
|
4557
4735
|
Mixer,
|
|
4558
4736
|
Mode,
|
|
4559
4737
|
PitchClass as Pitch,
|
|
@@ -4647,6 +4825,7 @@ export {
|
|
|
4647
4825
|
masteringDynamicsGate,
|
|
4648
4826
|
masteringDynamicsTransientShaper,
|
|
4649
4827
|
masteringInsertNames,
|
|
4828
|
+
masteringInsertParamInfo,
|
|
4650
4829
|
masteringInsertParamNames,
|
|
4651
4830
|
masteringPairAnalysisNames,
|
|
4652
4831
|
masteringPairAnalyze,
|
|
@@ -4655,6 +4834,7 @@ export {
|
|
|
4655
4834
|
masteringPresetNames,
|
|
4656
4835
|
masteringProcess,
|
|
4657
4836
|
masteringProcessStereo,
|
|
4837
|
+
masteringProcessorCatalog,
|
|
4658
4838
|
masteringProcessorNames,
|
|
4659
4839
|
masteringRepairDeclick,
|
|
4660
4840
|
masteringRepairDeclip,
|
|
@@ -4733,6 +4913,7 @@ export {
|
|
|
4733
4913
|
spectralBandwidth,
|
|
4734
4914
|
spectralCentroid,
|
|
4735
4915
|
spectralContrast,
|
|
4916
|
+
spectralEdit,
|
|
4736
4917
|
spectralFlatness,
|
|
4737
4918
|
spectralRolloff,
|
|
4738
4919
|
splitSilence,
|