Skip to content

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 ​

PortTypeDirectionDescription
prompt_instringinputOptional — a String node overrides the typed prompt.
image_inimageRgba16finputOptional first frame for image-to-video. A direct file (Image Source / prior generation) or any rendered node, captured at the playhead.
end_image_inimageRgba16finputOptional 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).
outimageRgba16foutputThe 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.

ParamTypeDefaultDescription
promptstring""The shot description. Required unless a first-frame image is connected.
modelstring(first available)Curated picks: a fast/cheap option for iteration plus premium tiers for hero shots. Pricing is per second of output.
durationscalar5Output length in seconds (choices capped per model). Cost scales with this.
aspectRatiostring16:9Output aspect.
resultPathstring""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.

Model options ​

Each model exposes its own controls — Duration and Resolution on most, an Audio switch on the models that can generate sound (Kling v3 Pro, FLUX 3, Seedance 2.5). The token cost above Generate updates as you change them.

Audio is off by default. The providers default it on, and on Kling it costs 50% more per second, so you opt in rather than pay for it silently. On Seedance audio is free.

When a generation returns an audio track, the node adds an AudioSource named Generated Audio alongside itself, wired into the layer's Output.audio_in — the same two-node shape you get when you drop a video file with sound into a comp. It is repointed on each re-run and removed if a later result has no audio. If you have already wired your own audio into Output.audio_in, it is left alone and nothing is created.

Some models require a start frame. Those refuse to run with nothing wired into image_in rather than spending tokens and failing.