id = "remotion" name = "Remotion" description = "Create videos programmatically in React." homepage = "https://www.remotion.dev" executables = ["remotion"] [commands] format = 1 label = "Remotion" description = "Render videos and stills or open the Studio. Lambda and benchmarking are not covered." quality = "ai-draft" base = "fig:remotion" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/remotion.ts" license = "MIT" [[commands.subcommand]] path = ["render"] label = "Render a video" description = "Render a composition to a video file." [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/remotion.ts" license = "MIT" [[commands.subcommand.field]] id = "entry" label = "Entry point" type = "path" path = { kind = "file", role = "input" } position = 0 sources = ["fig"] [[commands.subcommand.field]] id = "comp_id" label = "Composition ID" type = "string" position = 1 sources = ["fig"] [[commands.subcommand.field]] id = "output" label = "Output file" type = "path" position = 2 path = { kind = "file", role = "output" } effect = "overwrite" sources = ["fig"] [[commands.subcommand.field]] id = "codec" label = "Codec" type = "string" option = ["--codec"] suggestions = [{ value = "h264", label = "h264" }, { value = "h265", label = "h265" }, { value = "gif", label = "gif" }, { value = "vp8", label = "vp8" }, { value = "vp9", label = "vp9" }, { value = "mp3", label = "mp3" }, { value = "aac", label = "aac" }, { value = "wav", label = "wav" }, { value = "prores", label = "prores" }] sources = ["fig"] [[commands.subcommand.field]] id = "scale" label = "Scale" type = "string" option = ["--scale"] suggestions = [{ value = "0.5", label = "0.5" }, { value = "1", label = "1" }, { value = "1.5", label = "1.5" }, { value = "2", label = "2" }] sources = ["fig"] [[commands.subcommand.field]] id = "frames" label = "Frame range" type = "string" option = ["--frames"] sources = ["fig"] [[commands.subcommand.field]] id = "muted" label = "No audio" type = "boolean" option = ["--muted"] sources = ["fig"] [[commands.subcommand.field]] id = "overwrite" label = "Overwrite existing file" type = "boolean" option = ["--overwrite"] effect = "overwrite" sources = ["fig"] [[commands.subcommand.field]] id = "props" label = "Input props (file or JSON)" type = "string" option = ["--props"] sources = ["fig"] [[commands.subcommand.field]] id = "log" label = "Log level" type = "string" option = ["--log"] suggestions = [{ value = "verbose", label = "verbose" }, { value = "info", label = "info" }, { value = "warn", label = "warn" }, { value = "error", label = "error" }] sources = ["fig"] [[commands.subcommand.task]] id = "render-mp4" label = "Render H.264 MP4" set = { codec = ["h264"] } fields = ["entry", "comp_id", "output", "codec", "props"] required = ["entry", "comp_id"] [[commands.subcommand.task]] id = "render-gif" label = "Render GIF" set = { codec = ["gif"] } lock = ["codec"] fields = ["entry", "comp_id", "output", "frames"] required = ["entry", "comp_id"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["entry", "comp_id", "output", "codec", "props"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["scale", "frames", "muted", "overwrite", "log"] [[commands.subcommand]] path = ["still"] label = "Render a still" description = "Render a single frame to an image." [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/remotion.ts" license = "MIT" [[commands.subcommand.field]] id = "entry" label = "Entry point" type = "path" path = { kind = "file", role = "input" } position = 0 sources = ["fig"] [[commands.subcommand.field]] id = "comp_id" label = "Composition ID" type = "string" position = 1 sources = ["fig"] [[commands.subcommand.field]] id = "output" label = "Output file" type = "path" position = 2 path = { kind = "file", role = "output" } effect = "overwrite" sources = ["fig"] [[commands.subcommand.field]] id = "frame" label = "Frame number" type = "integer" option = ["--frame"] sources = ["fig"] [[commands.subcommand.field]] id = "width" label = "Width" type = "integer" option = ["--width"] sources = ["fig"] [[commands.subcommand.field]] id = "height" label = "Height" type = "integer" option = ["--height"] sources = ["fig"] [[commands.subcommand.field]] id = "props" label = "Input props (file or JSON)" type = "string" option = ["--props"] sources = ["fig"] [[commands.subcommand.task]] id = "still" label = "Render a still" fields = ["entry", "comp_id", "output", "frame"] required = ["entry", "comp_id"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["entry", "comp_id", "output", "frame"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["width", "height", "props"] [[commands.subcommand]] path = ["preview"] label = "Open Studio" description = "Start the Remotion Studio." [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/remotion.ts" license = "MIT" [[commands.subcommand.field]] id = "entry" label = "Entry point" type = "path" path = { kind = "file", role = "input" } position = 0 sources = ["fig"] [[commands.subcommand.field]] id = "no_open" label = "Do not open browser" type = "boolean" option = ["--no-open"] sources = ["fig"] [[commands.subcommand.field]] id = "props" label = "Input props (file or JSON)" type = "string" option = ["--props"] sources = ["fig"] [[commands.subcommand.task]] id = "preview" label = "Start Studio" fields = ["entry", "no_open"] required = ["entry"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["entry", "no_open"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["props"]