Flake Generate Animation
Where the clip actually gets rendered
- flake_anim_data
Everything upstream is bookkeeping. Flake Animate Preset loads files, Flake Animate Stack merges prompts and patches LoRAs - none of it draws a frame. Flake Generate Animation is the node that encodes the prompt, samples, decodes, optionally upscales and interpolates, and writes an MP4 to output/video/<family>/ while showing it inline. If your chain is quiet and nothing's happening, this is the node that isn't running.
How it decides what to render
Two pieces of maths you should know because they explain most "why does my clip look wrong" moments.
Size comes from the preset's resolution (480p, 580p or 720p) as a short edge, combined with the aspect of the start image, both sides rounded to a multiple the family needs - 16 for Wan 2.2, 32 for MiniMax H3. You don't set width and height here and you can't: your start image is your aspect ratio.
Length comes from duration × fps in the preset, then gets snapped to what the model can take. Wan 2.2 takes 4k+1 frames, so the default 5 seconds at 16 fps lands on 81 frames - which is exactly the native window Wan users have been living inside since 2.1, and the reason "5 seconds" is the practical ceiling for a single pass. MiniMax H3 is fixed at 24 fps and counts frames straight from duration.
Sampling then follows the family. Wan 2.2 runs the high-noise model up to the preset's refiner_step and the low-noise model after it, each with its own sigma shift - the two-pass architecture doing its thing, and why speed distills want to be on the low pass only. H3 conditions on your start frame as the first frame, shifts video and audio sigma separately, and decodes through both VAEs so the audio rides into the MP4 with the video.
The inputs that matter
flake_anim_data and seed are required; the seed has control_after_generate, so fix it before you get a clip you like, not after. Everything else is optional and every field appears only while its toggle is on:
upscale+upscale_model(frommodels/upscale_models/) - per frame, every frame.interpolate+interpolation_model(frommodels/frame_interpolation/, RIFE or FILM) - doubles the frame count and the fps, so a 24 fps H3 clip comes out at 48.use_headroom+headroom- "GB of VRAM kept free while sampling and decoding, on top of ComfyUI's reserve." This is the node's answer to decode-time OOM, and it's the setting to reach for when sampling finishes and the run dies on the decode.attention- the backend for the diffusion model(s), withdefaultmeaning "whatever ComfyUI was launched with."
No outputs. It's a terminal node: the clip lands in the UI and the file lands on disk.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/JeyzerMC/comfyui-flakes
Restart, or install via Manager by searching ComfyUI Flakes. Dependencies: pyyaml, already in ComfyUI. Your actual prerequisites are model files in their usual folders plus a recent ComfyUI - this node calls core image-to-video, audio-decode and video-save nodes, and the H3 branch needs a build that has the MiniMax H3 nodes at all.
Where people get burned
A toggle with no model is a hard error, with a message that names the field. Flip upscale on before picking an upscale model and the run stops rather than quietly skipping.
No start image raises and tells you where to put one: the grid item's bottom-left + on the Stack/Combo. Start images belong to items, not to this node.
Upscale and interpolation are per frame. They multiply a cost you've already paid once per frame. On a 121-frame 720p clip, that's the step where a comfortable setup becomes an overnight job.
VRAM. Two diffusion models plus text encoder plus VAE plus a frame batch is not an image workflow with a time axis bolted on. On a 16 GB card, expect quantised Wan weights and to actually use headroom; the recurring community figure is 50–80 GB of total memory for Wan 2.2 at higher precision, and swapping to disk for video is how people shave percentage points off SSD health.
The 5-second wall is real. Getting past 81 frames on Wan means chunking and stitching, and drift across chunk boundaries is still unsolved. This node renders one clip from one chain; it is not a chunker. Plan edits around 3–5 second shots.
Filenames come from the preset's prefix plus each flake's output stem, under output/video/<family>/. An unset stem in your flake shows up later as an unlabelled file. Set the stems.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| flake_anim_data | FLAKE_ANIM_DATA | — | |
| seed | INT | 00–18446744073709550000 | — |
| upscaleopt | BOOLEAN | false | — |
| upscale_modelopt | COMBO | 1 options: | |
| interpolateopt | BOOLEAN | false | — |
| interpolation_modelopt | COMBO | Doubles the frame count and the fps. | |
| use_headroomopt | BOOLEAN | false | — |
| headroomopt | FLOAT | 0.00–64 | GB of VRAM kept free while sampling and decoding, on top of ComfyUI's reserve. |
| attentionopt | COMBO | default | Attention backend for the diffusion model(s); default is the one ComfyUI was launched with. |
Outputs (0)
No outputs