@omnimedia/omnitool
Version:
open source video processing tools
23 lines (22 loc) • 889 B
TypeScript
import { Thread } from "@e280/comrade";
import { Machina } from "./parts/machina.js";
import { DecoderInput, DriverSchematic, Composition, EncoderInput, DecoderSource } from "./fns/schematic.js";
export type DriverOptions = {
workerUrl: URL | string;
};
export declare class Driver {
#private;
machina: Machina;
thread: Thread<DriverSchematic>;
static setup(options: DriverOptions): Promise<Driver>;
constructor(machina: Machina, thread: Thread<DriverSchematic>);
hello(): Promise<void>;
getAudioDuration(source: DecoderSource): Promise<any>;
getVideoDuration(source: DecoderSource): Promise<any>;
decode(input: DecoderInput): {
audio: ReadableStream<AudioData>;
video: ReadableStream<VideoFrame>;
};
encode({ readables, config }: EncoderInput): Promise<void>;
composite(composition: Composition): Promise<VideoFrame>;
}