UNPKG

tav-media

Version:

Cross platform media editing framework

83 lines (82 loc) 2.52 kB
interface AudioReaderOptions { playbackRate: number; contentStartTime: number; } interface AudioPreloadContext { audioContext: AudioContext; audioWorkletNode: AudioWorkletNode; audioEl: AudioElement; } interface AudioElement { audioEl: HTMLAudioElement; source: MediaElementAudioSourceNode; initializationSuccess: boolean; } export declare class MovieAudioReader { static audioProcessorLoaded: boolean; static processorCodePath: string; static maxAudioInputs: number; static pauseTimeout: any; static availableAudioIndexes: number[]; static audioContext: AudioPreloadContext; static audioElements: { [path: string]: AudioElement; }; static audioReaders: MovieAudioReader[]; static preload(path: string, useNow?: boolean): Promise<{ audioEl: AudioElement; audioContext: AudioContext; audioWorkletNode: AudioWorkletNode; }>; static createAudioElement(path: string): AudioElement; static pauseAll(): void; static playAll(): void; static MakeFromPath(path: string): MovieAudioReader; static MakeFromBytes(bytesOffset: number, length: number): MovieAudioReader; path: string; audioEl: HTMLAudioElement; audioContext: AudioContext; audioWorkletNode: AudioWorkletNode; preloadContext: AudioPreloadContext; source: MediaElementAudioSourceNode; audioPromise: Promise<MovieAudioReader>; contentTime: number; released: boolean; inputChannelCount: number; targetBitDepth: number; inputSampleRate: number; audioSampleCount: number; silenceAudioSampleCount: number; maxOutSampleCount: number; adjustRange: number; audioData: any[]; lastBufferData: any; playbackRate: number; paused: boolean; audioPaused: boolean; audioIndex: number; type: number; audioContextResume: boolean; audioInitializationSuccess: boolean; lastPostAudioTime: number; private constructor(); render(): void; readNextSample(): { bytes: number; length: number; sampleRate: number; channels: number; outputSamplesCount: number; }; decodeAudio(): Promise<MovieAudioReader>; setOptions(options: AudioReaderOptions): void; freeBuffer(): void; pause(): Promise<unknown>; continue(): Promise<boolean>; seekTo(contentTime: number, forceSeek?: boolean): void; release(): void; private playAudio; private pauseAudio; private resume; } export {};