UNPKG

tav-media

Version:

Cross platform media editing framework

36 lines (35 loc) 1.06 kB
import type { EmscriptenGL } from '../types'; export interface FrameData { id: number; data: ArrayBuffer; width: number; height: number; } export interface TimeRange { start: number; end: number; } export declare class VideoReader { static isIOS: () => boolean; static isAndroidMiniprogram: () => boolean; private readonly frameRate; private currentFrame; private mp4Path; private videoDecoder; private videoDecoderPromise; private frameData; private frameDataBuffers; private bufferIndex; private getFrameDataLooping; private getFrameDataResolve; private getFrameDataLoopTimer; private seeking; constructor(mp4Data: Uint8Array, width: number, height: number, frameRate: number, staticTimeRanges: TimeRange[]); prepare(targetFrame: number): Promise<boolean>; renderToTexture(GL: EmscriptenGL, textureID: number): void; onDestroy(): void; private getFrameData; private startGetFrameDataLoop; private getFrameDataLoop; private clearFrameDataLoop; }