flux / v3.0 / firstLastFrameToVideo
FLUX 3's interpolation trick
- start_image
- end_image
- api_config
- video
- draft_cache_audio
- draft_cache_video
- workflow_id
- raw_json
Here's the ComfyUI-native version of a trick you've seen everywhere else: give a model the first frame and the last frame, and let it dream up everything in between. It's how you animate a still, morph between two poses, or turn a before/after pair into a transition - and it works especially well when the two frames come from the same image generator, because the model isn't fighting a style change. This node runs FLUX 3's first-and-last-frame video on Civitai's fleet, with native audio.
What it is
flux / v3.0 / firstLastFrameToVideo from civitai/civitai-comfy-nodes, under Civitai/Video/flux. Two IMAGE sockets in, a VIDEO out, a closed-model cloud job in between. FLUX 3 is BFL's multimodal model (image/video/audio in one), and it's API-only - no open weights - so hosted is the only way to run it, and Civitai is the intermediary that drops it into your graph.
The inputs
prompt- required. Describes the motion between the frames. "She turns to the camera," "the car drifts through the corner," "the flower blooms" - the prompt is your director's note for the in-between.start_image/end_image- both required IMAGE sockets. The tooltip notes they can be "A URL, A DataURL or a Base64 string" - the pack converts whatever IMAGE you wire in, so a normal Load Image output just works. Keep the two frames visually consistent: same subject, same style, different state. Wildly different frames make the interpolation the model's problem, and the model's problem becomes your problem.duration- 5–20 seconds, default 5.resolution-720por1080p, default 720p.aspect_ratio-autoplus the standard set (16:9, 1:1, 9:16, etc.).generate_audio- default true. FLUX 3 does native synchronized audio; turn it off for a silent clip.draft- default false. Draft mode renders a cheap 720p version carrying a draft cache; feed that to theflux / v3.0 / draftEnhancenode for the full-quality pass. For anything you're iterating on, draft first.
The outputs
video- the interpolated clip, as a VIDEO.draft_cache_audio/draft_cache_video- the caches whendraftis on, ready for draftEnhance.workflow_id/raw_json- the pack standard.
Installing it
ComfyUI Manager → Civitai Comfy Nodes → Install → restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/civitai/civitai-comfy-nodes.git
pip install -r civitai-comfy-nodes/requirements.txt
Gotchas
- The frames decide everything. Two consistent frames give you a tight interpolation; two unrelated ones give you a morph that looks like a different video. Make the start and end frames deliberately, don't grab random outputs.
- Metered per second. 1080p at 20 seconds with audio is a real charge. Draft mode is the escape hatch - and with a first/last-frame workflow, the draft is genuinely worth reviewing before you spend the full pass.
- Your images and prompt leave the machine. Closed model, hosted call, by design.
- Credentials - Civitai Auth node,
CIVITAI_API_TOKEN, or sidebar OAuth. No token, no interpolation. - The 5-second floor on
durationis the model's minimum, not a suggestion - you can't request a 2-second blink-and-miss clip.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| start_image | IMAGE | Either A URL, A DataURL or a Base64 string | |
| end_image | IMAGE | Either A URL, A DataURL or a Base64 string | |
| durationopt | INT | 55–20 | Duration of the generated video in seconds. |
| resolutionopt | COMBO | 720p | 2 options: 720p, 1080p |
| aspect_ratioopt | COMBO | auto | Aspect ratio of the generated video. "auto" lets the model choose. |
| generate_audioopt | BOOLEAN | true | Whether to generate a synchronized audio track for the video. |
| draftopt | BOOLEAN | false | Render 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_configopt | CIVITAI_CONFIG | Optional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login. |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| draft_cache_audio | AUDIO | — |
| draft_cache_video | VIDEO | — |
| workflow_id | STRING | — |
| raw_json | STRING | — |