@omnimedia/omnitool
Version:
open source video processing tools
33 lines (32 loc) • 1.14 kB
TypeScript
import { Playback } from "./parts/playback.js";
import { Driver } from "../../../driver/driver.js";
import { TimelineFile } from "../../parts/basics.js";
import { AudioLevelObserver } from "./parts/types.js";
import { DecoderSource } from "../../../driver/fns/schematic.js";
type ResolveMedia = (hash: string) => DecoderSource;
export declare class VideoPlayer {
#private;
private driver;
canvas: HTMLCanvasElement;
playback: Playback;
readonly audio: {
levels: AudioLevelObserver;
};
constructor(driver: Driver, resolveMedia: ResolveMedia, timeline: TimelineFile);
play(): Promise<void>;
pause(): void;
seek(timeMs: number): Promise<void>;
setFPS(value: number): void;
resize(width: number, height: number): void;
get isSeeking(): boolean;
get isPlaying(): boolean;
get duration(): import("../../../units/ms.js").Ms;
get currentTime(): import("../../../units/ms.js").Ms;
get playbackRate(): number;
set playbackRate(rate: number);
/**
call this whenever your timeline state changes
*/
update(timeline: TimelineFile): Promise<void>;
}
export {};