Generate Video
Generate a video clip from a text prompt — or animate a still frame into motion (image-to-video). Spends AI tokens per generation, scaled by duration.
Category: AI Menu path: AI > Generate Video
Ports
| Port | Type | Direction | Description |
|---|---|---|---|
prompt_in | string | input | Optional — a String node overrides the typed prompt. |
image_in | imageRgba16f | input | Optional first frame for image-to-video. A direct file (Image Source / prior generation) or any rendered node, captured at the playhead. |
end_image_in | imageRgba16f | input | Optional last frame. The model interpolates from the first frame to this one. Only used when image_in is also connected (supported by LTX / Seedance / Kling). |
out | imageRgba16f | output | The generated clip, played back frame-by-frame (transparent until you generate). |
Parameters
The AI controls live in the Generate panel in Properties. Standard rows expose the same playback params as Video Source (timeMode, speed, reverse, startOffset, loopMode) — the generated clip is a video like any other.
| Param | Type | Default | Description |
|---|---|---|---|
prompt | string | "" | The shot description. Required unless a first-frame image is connected. |
model | string | (first available) | Curated picks: a fast/cheap option for iteration plus premium tiers for hero shots. Pricing is per second of output. |
duration | scalar | 5 | Output length in seconds (choices capped per model). Cost scales with this. |
aspectRatio | string | 16:9 | Output aspect. |
resultPath | string | "" | Hidden — the saved clip under the project's generated/ folder. |
How It Works
Video generation runs as an async job: Caddis submits it to the server (tokens are debited up front), the job queues and renders remotely for anywhere from ~30 seconds to several minutes, and the status streams into the Generate button and status console (Queued → Generating → Downloading). The finished clip downloads into generated/ and the node plays it back exactly like a Video Source — scrub it, loop it, retime it, feed it to any effect chain. If the job fails at any point, your tokens are refunded automatically.
Keep the app open while a job runs — generation continues remotely, but the result is fetched by your session.
Usage Examples
Text-to-video b-roll
Type a prompt, pick the fast model, Generate. Trim and retime the clip on the timeline like any footage.
Animate a designed frame
Build a styled still (shapes, text, gradients), wire the chain into image_in, and describe the motion in the prompt — image-to-video preserves your composition and adds movement.
Morph between two frames
Connect a first frame to image_in and a last frame to end_image_in — the model generates a smooth transition between them. Great for logo reveals or A→B transformations.
Tips
- Iterate on the cheap/fast model, then re-run the winning prompt on a premium model.
- Cost = duration × the model's per-second rate (shown live on the button). Shorter drafts save tokens.
- Use Import to Assets to keep a generation; Delete removes the file and frees the node for the next take.
Related Nodes
- VideoSource — the playback semantics this node inherits
- GenerateImage — stills; pairs with
image_infor image-to-video - VideoDepth / VideoRemoveBackground / VideoSegment — process the generated clip further