audio-inspect
Version:
Lightweight yet powerful audio analysis library
32 lines (29 loc) • 864 B
TypeScript
interface AudioData {
sampleRate: number;
channelData: Float32Array[];
duration: number;
numberOfChannels: number;
length: number;
}
type ChannelSelector = 'mix' | number | 'all' | readonly number[];
interface CrestFactorOptions {
channel?: ChannelSelector;
windowSize?: number;
hopSize?: number;
method?: 'simple' | 'weighted';
}
interface CrestFactorResult {
crestFactor: number;
crestFactorLinear: number;
peak: number;
rms: number;
timeVarying?: {
times: Float32Array;
values: Float32Array;
valuesLinear: Float32Array;
peaks: Float32Array;
rmsValues: Float32Array;
} | undefined;
}
declare function getCrestFactor(audio: AudioData, options?: CrestFactorOptions): CrestFactorResult;
export { type CrestFactorOptions, type CrestFactorResult, getCrestFactor };