UNPKG

audio-inspect

Version:

Lightweight yet powerful audio analysis library

44 lines (41 loc) 1.14 kB
interface AudioData { sampleRate: number; channelData: Float32Array[]; duration: number; numberOfChannels: number; length: number; } type ChannelSelector = 'mix' | number | 'all' | readonly number[]; interface VADOptions { channel?: ChannelSelector; frameSizeMs?: number; hopSizeMs?: number; method?: 'energy' | 'zcr' | 'combined' | 'adaptive'; energyThreshold?: number; zcrThresholdLow?: number; zcrThresholdHigh?: number; adaptiveAlpha?: number; noiseFactor?: number; minSilenceDurationMs?: number; minSpeechDurationMs?: number; preEmphasis?: boolean; smoothing?: boolean; } interface VADSegment { start: number; end: number; type: 'speech' | 'silence'; confidence?: number; } interface VADResult { segments: VADSegment[]; speechRatio: number; features?: { energies: Float32Array; zcrs: Float32Array; decisions: Float32Array; times: Float32Array; }; } declare function getVAD(audio: AudioData, options?: VADOptions): VADResult; export { type VADOptions, type VADResult, type VADSegment, getVAD };