@diffusionstudio/core
Version:
A fast, browser based video compositing engine powered by WebCodecs
29 lines (28 loc) • 1.11 kB
TypeScript
import { Input, InputAudioTrack } from 'mediabunny';
import { BaseSource, SourceOptions } from '../source';
import { WebAudioDecoder } from '../../services/audio-decoder';
import { Time } from '../../types';
import { AudioSlice, SilenceDetectionOptions } from './types';
export declare class AudioSource extends BaseSource {
decoder: WebAudioDecoder;
duration?: number;
demuxer: Input;
audioTrack: InputAudioTrack | null;
sampleRate: number;
numberOfChannels: number;
constructor(options: SourceOptions);
init(): Promise<void>;
decode(numberOfChannels?: number, sampleRate?: number, cache?: boolean): Promise<AudioBuffer>;
/**
* Find silences in the audio clip. Results are cached.
*
* uses default sample rate of 3000
* @param options - Silences options.
* @returns An array of the silences (in seconds) in the clip.
*/
silences(options?: SilenceDetectionOptions): Promise<AudioSlice[]>;
samplesInRange({ start, end }: {
start: Time;
end: Time;
}): AsyncGenerator<import('mediabunny').AudioSample, void, unknown>;
}