UNPKG

mfx

Version:

In-browser video editing toolkit, with effects accelerated by WebGL

57 lines (56 loc) 2.42 kB
import type { GenericTrack } from "./container/Track"; import { ExtendedVideoFrame } from "./frame"; /** * @group Stream */ export declare abstract class MFXWritableStream<I> extends WritableStream { protected _eventTarget: EventTarget; abstract get identifier(): any; constructor(underlyingSink?: UnderlyingSink<I>, strategy?: QueuingStrategy<I>); dispatchEvent(event: Event): void; dispatchError(error: Error): void; addEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } /** * @group Stream */ export declare abstract class MFXTransformStream<I, O> extends TransformStream { protected _track: GenericTrack<any>; protected _buffer: O[]; protected _eventTarget: EventTarget; protected _controller: TransformStreamDefaultController<O>; protected _debug: boolean; abstract get identifier(): any; constructor(transformer?: Transformer<I, O>, writableStrategy?: QueuingStrategy<I>, readableStrategy?: QueuingStrategy<O>); private _copy_buffer; get desiredSize(): number; get track(): GenericTrack<any>; setDebug(value: boolean): void; setTrack(track: GenericTrack<any>): this; queue(...items: O[]): Promise<void>; dispatchEvent(event: Event): void; dispatchError(error: Error): void; addEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } export declare class MFXBufferCopy<T> extends MFXWritableStream<T> { get identifier(): string; constructor(a: WritableStream<T>, b: WritableStream<T>); } /** * @group Video */ export declare class FrameTee extends MFXTransformStream<ExtendedVideoFrame, ExtendedVideoFrame> { get identifier(): string; constructor(ctx: (stream: ReadableStream<ExtendedVideoFrame>) => void); } /** @group Stream */ export declare class Void extends WritableStream<any> { constructor(); } export declare class PassThroughStream<T> extends MFXTransformStream<T, T> { flushed: Promise<void>; get identifier(): string; constructor(transform?: (T: any) => T); }