Nodes/comfyui-helto-wan22/WAN 2.2 Generate All-in-One
ComfyUI Node

WAN 2.2 Generate All-in-One

WAN 2.2 I2V from storyboard to video in one node

By helto4real·Created 4 months ago·Updated 4 months ago· 0
WAN 2.2 Generate All-in-One
  • high_model
  • low_model
  • clip
  • vae
  • start_images
  • ref_image
  • control_video
  • images
positive_prompt
negative_prompt
width1280
height704
length49
batch_size1
fps24.00
timing_modeframe
resize_modecontain
duplicate_policyerror
pad_color0,0,0
global_strength1.00
start_images_strength0.85
structural_repulsion_boost1.00
seed0
steps30
cfg1.0
sampler_nameeuler
schedulersimple
switch_step3
shift8.00
denoise1.00
guides_json{"version":1,"guides":[]}

This is the node that gets you from storyboard to finished video without building a twenty-node sampler rig around WAN 2.2's two-expert setup. WAN22GenerateAllInOne does everything the pack's other three nodes do, plus the sampling and decode: prompt encode, multi-image guide conditioning, the two-phase high/low sampling WAN 2.2 needs, and VAE decode - all inside one node that outputs actual images. It's the closest thing this pack has to a one-click I2V, and for most people it should be the first thing they wire up.

It ships in comfyui-helto-wan22, which brings LTX-style multi-image guide management to WAN 2.2 using WAN's native concat conditioning. Where its sibling WAN22MultiImageI2VGuide stops at conditioning + latent, this one keeps going: it runs both WAN 2.2 experts, then hands you frames.

How it works

Under the hood it's the pack's whole pipeline in sequence. It patches the flow sampling shift onto both models, inspects the models to count their image-conditioning channels, encodes your prompts with the CLIP input, applies the guide conditioning exactly like the Apply node (guide timeline VAE-encoded once, attached via concat_latent_image/concat_mask/concat_mask_index), then samples in two phases: the high_model runs steps 0 → switch_step, and the low_model takes over from switch_step to the end - with noise disabled on the low pass so it continues the trajectory instead of re-noising. Finally the WAN VAE decodes the latent back to an IMAGE batch. It even reports phase progress ("WAN 2.2 Generate: …") in the UI.

The two-model split is WAN 2.2's architecture: a high-noise expert that handles motion and composition, and a low-noise expert that handles detail. The switch_step tooltip says what the community converged on - switch_step 3 with 5 total steps is the common fast setup. shift (default 8) is the flow sampling shift, matching ComfyUI's normal ModelSamplingSD3/WAN shift control.

Inputs that matter

  • high_model / low_model - the two WAN 2.2 I2V experts. clip is the WAN text encoder, vae the WAN VAE. These four are the required model inputs.
  • positive_prompt / negative_prompt - multiline text, encoded internally; no separate CLIP Text Encode nodes needed.
  • switch_step, shift, seed, steps, cfg, sampler_name, scheduler, denoise - the sampling controls. Note cfg defaults to 1.0, which is the right neighborhood for WAN I2V guide workflows (and for speed-LoRA setups); raise it if your output looks underconditioned.
  • timing_mode, resize_mode, duplicate_policy, global_strength, start_images_strength, structural_repulsion_boost - the same guide settings as the rest of the pack. structural_repulsion_boost (1.0–2.0) is the interesting one: it adds extra transition guidance between guide anchors so the video is pushed to actually change between shots rather than sit on an anchor.
  • guides_json - the hidden serialized shot list from the node's custom storyboard UI. Optional: start_images, ref_image, control_video.

The single output is images - ready for a preview or save node.

How to install

Plain clone, no pip deps, no bundled models:

cd ComfyUI/custom_nodes
git clone https://github.com/helto4real/comfyui-helto-wan22

Restart ComfyUI (or install "comfyui-helto-wan22" via ComfyUI Manager). You supply the WAN 2.2 I2V high/low checkpoint pair, the WAN VAE, and the umt5 text encoder yourself - put them in models/ the normal way.

Where people get burned

  • Model-pair mismatch is checked, hard. If the high and low models report different latent channel counts, the node refuses to run - you can't mix a 5B high with a 14B low. Use a matched WAN 2.2 pair.
  • A T2V (text-to-video) model won't work. WAN I2V models expose the image-conditioning channels; a T2V model doesn't, and the node raises "does not appear to expose WAN image-conditioning channels." Load I2V weights.
  • Duplicate guide frames default to error. Same rule as the rest of the pack - change duplicate_policy or nudge frames once your timeline overlaps.
  • It downloads nothing. No model prompt, no automatic fetch. If the run fails instantly with a missing-file error, the gap is almost always a model/VAE/text-encoder you still need to download.

If you'd rather see the sampling steps on canvas, WAN22MultiImageI2VGuide + WAN22ApplyImageGuides + your own samplers give you the visible equivalent. But for a first working keyframed WAN 2.2 pipeline, this node is the least wiring between you and a video.

CategoryWAN 2.2

Inputs (30)

NameTypeDefaultDescription
high_modelMODELWAN 2.2 high-noise image-to-video model, usually sampled first.
low_modelMODELWAN 2.2 low-noise image-to-video model, usually sampled after switch_step.
clipCLIPWAN text encoder used to encode prompts.
vaeVAEWAN 2.2 VAE used for guide encoding and final decode.
positive_promptSTRING
negative_promptSTRING
widthINT128032–16384
heightINT70432–16384
lengthINT491–16384
batch_sizeINT11–4096
fpsFLOAT24.001–240Frames per second used when timing_mode is seconds.
timing_modeCOMBOframeInterpret guide positions as frame indexes or seconds.
resize_modeCOMBOcontainHow guide images are resized before VAE encoding. contain/pad preserves aspect ratio with padding.
duplicate_policyCOMBOerrorHow to handle guide images that resolve to the same frame.
pad_colorSTRING0,0,0RGB padding color for contain/pad resize mode. Accepts r,g,b or #rrggbb.
global_strengthFLOAT1.000–1Multiplier applied to every guide strength and start image strength.
start_images_strengthFLOAT0.850–1Strength for the optional start image sequence before global_strength is applied.
structural_repulsion_boostFLOAT1.001–2High-noise structural repulsion boost between guide anchors. 1.0 disables the extra transition guidance.
seedINT00–18446744073709550000
stepsINT301–10000
cfgFLOAT1.00–100
sampler_nameCOMBOeuler44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38
schedulerCOMBOsimple9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3
switch_stepINT30–10000Step where sampling switches from high_model to low_model. Common WAN 2.2 workflows use 3 with 5 total steps.
shiftFLOAT8.000–100WAN flow sampling shift. This matches ComfyUI's normal ModelSamplingSD3/WAN shift control.
denoiseFLOAT1.000–1
guides_jsonSTRING{"version":1,"guides":[]}Hidden serialized guide data used by the custom UI and saved in workflows.
start_imagesoptIMAGEOptional IMAGE batch inserted from frame 0.
ref_imageoptIMAGEOptional WAN 2.2 reference image encoded as reference_latents.
control_videooptIMAGEOptional WAN 2.2 control video encoded into the first concat slot.

Outputs (1)

NameTypeDescription
imagesIMAGE