Nodes/civitai-comfy-nodes/flux / v3.0 / keyframesToVideo
ComfyUI Node

flux / v3.0 / keyframesToVideo

Script FLUX 3 video between keyframes, without a single LoRA

By civitai·Created 3 months ago·Updated 2 days ago· 44
flux / v3.0 / keyframesToVideo
  • api_config
  • video
  • draft_cache_audio
  • draft_cache_video
  • workflow_id
  • raw_json
prompt
keyframes_json
duration5
resolution720p
aspect_ratioauto
generate_audiotrue
draftfalse

This is the shot-layout node of the FLUX 3 trio. Instead of one image and a prayer, you hand it a set of keyframes in JSON and the model generates video that travels between them. It's the closest thing in this pack to "storyboarding in ComfyUI" - and it's also the fiddliest input in the whole video menu, so let's be clear about what's actually required.

Like every node in civitai-comfy-nodes - Civitai's official, ~160-node pack generated from its Orchestration API spec - this doesn't run locally. It submits a videoGen job to Civitai's cloud, bills it in Buzz, and returns a native VIDEO tensor. No model download, no VRAM, no FLUX weights to hunt for (there are no open FLUX 3 weights anyway).

The input that matters: keyframes_json

keyframes_json is a required STRING widget, and per the author's tooltip it takes "up to 10 keyframes with unique frame positions." It's JSON text - position plus whatever a keyframe carries (image/URL/state). This is the one where beginners stall: there's no editor, no picker, you paste JSON into a text box. Grab a working example from the Civitai article or the pack repo before you improvise; the schema is exacting and a malformed array gets you a server-side 400 rather than a friendly local error.

The good news: the rest of the node is friendly. prompt is a plain multiline text box describing the motion and content, duration runs 5–20 seconds, resolution is 720p/1080p, aspect_ratio goes auto, 16:9, 9:16, 21:9 and friends. generate_audio defaults on - FLUX 3's native synchronized audio is the model's marquee feature and it's free to keep on unless you're scoring it yourself. draft renders a fast, cheap 720p preview that carries a draft cache a later draftEnhance re-renders at full quality - with multiple keyframes in play, draft mode is your friend for iteration before you pay for the full render.

Outputs: video (VIDEO), draft_cache_audio (AUDIO), draft_cache_video (VIDEO), plus workflow_id and raw_json strings for debugging and cost inspection.

Install and auth

Same story as every node in the pack - official Civitai, on the Comfy Registry:

# ComfyUI Manager: search "Civitai Comfy Nodes"
cd ComfyUI/custom_nodes
git clone https://github.com/civitai/civitai-comfy-nodes.git
pip install -r civitai-comfy-nodes/requirements.txt

Restart, then authenticate: a Civitai Auth node, the CIVITAI_API_TOKEN env var, or stored OAuth from the sidebar.

Common issues

The keyframes JSON is the trap - start from a known-good example. Beyond that, the usual pack-level gotchas apply: Buzz adds up fast on video (every generated second is billed, and keyframe-heavy work invites retries), your prompt and keyframes leave your machine to a third-party server with its own moderation, and the whole pack is early preview - the README warns nodes and behavior can change without notice. Where people also get burned: expecting this node to accept images directly. Keyframe images ride inside the JSON as URLs/data, not as IMAGE sockets - only prompt, duration, resolution, aspect_ratio, generate_audio and draft are widgets here. Keep a JSON snippet library of keyframe patterns you like and reuse them; that's how you stop re-pasting the tricky part.

CategoryCivitai/Video/flux

Inputs (8)

NameTypeDefaultDescription
promptSTRING
keyframes_jsonSTRINGUp to 10 keyframes with unique frame positions.
durationoptINT55–20Duration of the generated video in seconds.
resolutionoptCOMBO720p2 options: 720p, 1080p
aspect_ratiooptCOMBOautoAspect ratio of the generated video. "auto" lets the model choose.
generate_audiooptBOOLEANtrueWhether to generate a synchronized audio track for the video.
draftoptBOOLEANfalseRender a fast, cheap 720p draft instead of a full-quality video. Draft results additionally carry a draft cache that a later draftEnhance operation re-renders at full quality.
api_configoptCIVITAI_CONFIGOptional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login.

Outputs (5)

NameTypeDescription
videoVIDEO
draft_cache_audioAUDIO
draft_cache_videoVIDEO
workflow_idSTRING
raw_jsonSTRING