/** * EDL renderer. * * Turns an Edl into a single mp4 file via ffmpeg. Produces 30ms audio * fades at every cut boundary (video-use's "no pops" rule). Supports * hard cuts, crossfades, and fade-to-black transitions. * * Archive-first per workspace rule `.cursor/rules/shot-asset-safety.mdc`: * any existing output file is renamed to `-v.` before the * new render lands. */ import type { Edl, Take } from './types.js'; export interface RenderOptions { /** Optional destination for the output file. Default: `/final-edit.mp4`. */ outputPath?: string; /** Skip archiving the prior version. Default false (always archive). */ skipArchive?: boolean; /** Dry-run — print the ffmpeg invocation without executing. */ dryRun?: boolean; /** * Only re-render a specific clip by index. When set, the renderer writes * a partial mp4 at `.clip-.mp4` that the caller can splice * via a secondary concat. This supports anti-pattern E4 (don't re-render * the whole edit to fix one clip). */ onlyClipIndex?: number; } export interface RenderResult { outputPath: string; archivedPath: string | null; filterGraph: string; command: string; durationEstSec: number; } export declare function renderEdl(edl: Edl, takes: Take[], options?: RenderOptions): RenderResult; //# sourceMappingURL=render.d.ts.map