mfx
Version:
In-browser video editing toolkit, with effects accelerated by WebGL
21 lines (19 loc) • 1.01 kB
text/typescript
import { MFXBlob } from "../lib/blob";
import type { GenericTrack, VideoTrack } from "../lib/container/Track";
import type { DecodeOptions } from "../lib/decode";
import { ExtendedVideoFrame } from "../lib/frame";
import type { MFXTransformStream } from "../lib/stream";
export interface TestDefinition {
id: string;
title: string;
description: string;
skip?: boolean | string;
codec?: string;
input: string;
isImage?: boolean;
decodeOptions?: DecodeOptions;
decode?: (input: string) => Promise<ReadableStream<ExtendedVideoFrame>>,
expect?: () => Promise<boolean>;
process?: ((_: ReadableStream<ExtendedVideoFrame>, track: VideoTrack<any>) => Promise<ReadableStream<ExtendedVideoFrame>>) | ((_: ReadableStream<ExtendedVideoFrame>) => ReadableStream<ExtendedVideoFrame>);
output?: (v: ReadableStream<ExtendedVideoFrame>, a?: ReadableStream<AudioData>, vt?: GenericTrack<any>, at?: GenericTrack<any>) => Promise<(MFXTransformStream<ExtendedVideoFrame, any>[]) | ReadableStream<MFXBlob>>,
};