Wan 2.2 Sampler for Text to Video
VideoX-Fun's node for the plain Wan 2.2 checkpoints
- funmodels
- prompt
- negative_prompt
- riflex_k
- images
If you've landed here and also seen Wan2_2FunT2VSampler, you're not imagining the déjà vu - the two nodes expose an identical set of fields. The real difference is which checkpoint they're built to pair with: this one targets the base Wan 2.2 models straight from Alibaba's Wan-AI team (Wan2.2-T2V-A14B, Wan2.2-TI2V-5B), while the Fun-suffixed sibling targets Alibaba PAI's parallel "Fun" release (Wan2.2-Fun-A14B-InP and friends), which layers extra capabilities like start/end-frame prediction on top. Load the checkpoint that matches whichever node you're using, and the honest answer is you can't tell them apart from the schema alone - check the model name.
Wan 2.2, briefly
Wan 2.2 is Alibaba Tongyi's July 2025 release and, as of mid-2026, still the last open numbered Wan - 2.5, 2.6, and 2.7 all shipped API-only with no weights, so this is as current as local Wan gets. It runs a two-expert Mixture-of-Experts split: a high-noise expert handling motion and composition, a low-noise expert refining detail. That split is why the community's speed-LoRA advice is so specific - apply distillation LoRAs to the low-noise pass only and keep the high-noise pass clean, or you flatten exactly the motion and emotional expressiveness that made 2.2 an upgrade over 2.1 in the first place. This node doesn't expose the two experts as separate controls; that guidance lives at the LoadWanLora stage upstream if you're using one.
The fields
prompt / negative_prompt - Wan's prompting convention holds here same as everywhere else in this pack: a flat, technical description of the still image, then a separate, simple description of the motion, without restating the image in the motion line. width/height default to 832x480 in steps of 16, standard Wan working resolution. video_length defaults to 81, up to 161, in steps of 4 - landing on the 4n+1 grid (81, 121, 161) that matches the Wan VAE's roughly 4x temporal compression.
is_image swaps video generation for a single still frame. This isn't a novelty toggle - Wan's single-frame output holds up well enough that people use it as a genuine text-to-image tool, and Wan 2.2 specifically improved still quality over 2.1 to the point the community rates it competitively against dedicated image models.
steps defaults to 50, cfg to 6, scheduler is locked to Flow. TeaCache (enable_teacache, teacache_threshold, num_skip_start_steps, teacache_offload) is a real speedup at a real cost - mostly to face consistency, so weigh that against how much the faces in your shot matter. num_skip_start_steps (default 5) keeps the first few, structure-setting steps out of the cache. cfg_skip_ratio is a second speed lever, skipping negative-prompt computation on a portion of steps at some cost to how closely the output follows your prompt.
riflex_k (optional) is RIFLEx, aimed at pushing past the 81-frame native ceiling by adjusting the model's positional encoding. Set expectations accordingly - reports on Wan 2.2 specifically are mixed, with the best luck on simple, repetitive motion rather than anything with a lot of scene change.
Output is images, the generated clip (or still frame) as a frame batch.
Installing VideoX-Fun
ComfyUI Manager: search "VideoX-Fun". Manual: cd ComfyUI/custom_nodes && git clone https://github.com/aigc-apps/VideoX-Fun, restart. The README's model zoo links the base Wan 2.2 weights via HuggingFace and ModelScope; download the full folder and place it under ComfyUI/models/Fun_Models/, not a standard checkpoints/ folder. These are large - the 14B-class model is tens of gigabytes - so check disk space first.
Common issues
The main one is entirely avoidable and entirely common: pairing this node with a Fun-branded checkpoint (or the reverse on Wan2_2FunT2VSampler). It won't necessarily throw an error, it'll just under-deliver on whatever the checkpoint was specifically trained for. After that it's the pack-wide standards - OOM on 14B without GPU_memory_mode set correctly at LoadWanModel, and frame counts that need to land on the 4n+1 grid.
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| funmodels | FunModels | — | |
| prompt | STRING_PROMPT | — | |
| negative_prompt | STRING_PROMPT | — | |
| video_length | INT | 815–161 | — |
| width | INT | 83264–2048 | — |
| height | INT | 48064–2048 | — |
| is_image | COMBO | false | 2 options: false, true |
| seed | INT | 430–18446744073709550000 | — |
| steps | INT | 501–200 | — |
| cfg | FLOAT | 6.001–20 | — |
| scheduler | COMBO | Flow | 1 options: Flow |
| teacache_threshold | FLOAT | 0.1000–1 | — |
| enable_teacache | COMBO | true | 2 options: false, true |
| num_skip_start_steps | INT | 50–50 | — |
| teacache_offload | COMBO | true | 2 options: false, true |
| cfg_skip_ratio | FLOAT | 0.000–1 | — |
| riflex_kopt | RIFLEXT_ARGS | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |