UNPKG

@diffusionstudio/core-v4

Version:

2D motion graphics and video rendering engine

82 lines (81 loc) 3.16 kB
import { VideoSource } from '../../sources'; import { AudioClip } from '../audio'; import { Renderer } from '../../renderer'; import { Layer } from '../../layer'; import { VideoClipAnimationOptions, VideoClipProps } from './interfaces'; import { MediaInput } from '../../types'; declare const VideoClip_base: { new (...args: any[]): { source?: { height: number; width: number; aspectRatio: number; } | undefined; _position: { x: number; y: number; }; _layoutCache: import('../..').Size; _height?: number; _width?: number; _aspectRatio?: number; _keepAspectRatio: boolean; _mask?: import('../..').Mask; constraints: import('..').Constraints; anchorX: number; anchorY: number; scaleX: number; scaleY: number; translateX: number; translateY: number; rotation: number; opacity: number; filter?: string; blendMode?: import('../..').BlendMode; get x(): number; set x(value: number | import('../..').Percent); get y(): number; set y(value: number | import('../..').Percent); get translate(): import('../..').Point; set translate(value: import('../..').Point | number); get anchor(): import('../..').Point; set anchor(value: import('../..').Point | number); get scale(): import('../..').Point; set scale(value: import('../..').Point | number); mask: import('../..').Mask | undefined; keepAspectRatio: boolean; get aspectRatio(): number; set aspectRatio(value: number | undefined); get height(): number; set height(value: import('../..').Percent | number | undefined); get width(): number; set width(value: import('../..').Percent | number | undefined); get position(): import('../..').Point; set position(value: import('../..').RelativePoint | "center"); animate(time: import('../..').Timestamp): /*elided*/ any; layout(next: import('../..').Size): void; readonly size: import('../..').Size; readonly bounds: [import('../..').Point, import('../..').Point, import('../..').Point, import('../..').Point]; animations: import('..').ClipAnimationOptions; start: import('../..').Timestamp; stop: import('../..').Timestamp; toJSON(exclude?: string[]): unknown; fromJSON<K = {}>(obj: K extends string ? never : K): /*elided*/ any; }; readonly VISUAL_MIXIN: symbol; } & typeof AudioClip; export declare class VideoClip extends VideoClip_base { _keepAspectRatio: boolean; readonly type = "VIDEO"; layer?: Layer<VideoClip>; source?: VideoSource; private videoDecoder?; animations: VideoClipAnimationOptions; constructor(input?: MediaInput | VideoSource, props?: VideoClipProps); init(audio: Renderer): Promise<void>; seek(audio: Renderer): Promise<void>; update(audio: Renderer): Promise<void>; render(video: Renderer): void; exit(): Promise<void>; } export {};