TurboWan I2V Sampler
The pack's ComfyUI-native path, for when you want to drive KSamplerAdvanced yourself
- positive
- negative
- vae
- start_image
- clip_vision_output
- positive
- negative
- latent
Don't confuse this with TurboDiffusionI2VSampler. That node is the pack's all-in-one: models, prompt, image, done. This one - TurboWanSampler - is the other path, the "do it the ComfyUI way" route. It doesn't sample anything. It prepares the conditioning and the initial latent for a standard Wan I2V workflow driven by KSamplerAdvanced, exactly the way ComfyUI's own built-in WanImageToVideo node does.
The pack's shipped workflow (turbowan_workflow.json) uses the all-in-one node, so you don't need this one to get results. But if you want KSamplerAdvanced's scheduler control - say, to pair a distilled Wan model with your own sampler/schedule, or because you're already running a standard Wan 2.2 UNet - this is the setup node that makes it possible.
How it works
Give it positive and negative conditioning from a CLIPTextEncode, a VAE, and your target width/height/length, and it builds a blank video latent in Wan's format: [batch, 16, ((length - 1) // 4) + 1, height / 8, width / 8]. The temporal compression (÷4, plus the extra frame) is Wan's, not yours to fiddle with.
Feed it the optional start_image and it gets more interesting: it encodes the image into latent space, then bakes it into both the positive and negative conditioning as a concat_latent_image plus a concat_mask, marking which temporal positions are fixed. That's what makes I2V I2V - the first frames are known and the sampler animates forward from them. There's also an optional clip_vision_output input if you want to add CLIP-vision conditioning on top.
Outputs are positive, negative, and latent - all three go straight into KSamplerAdvanced. It's a genuinely simple node to wire once you see the pattern: it converts "here's my image and dimensions" into "here's a latent and conditioning the sampler understands."
The inputs that matter
width/height/length- resolution and frame count.lengthdefaults to 121, steps by 8, and the temporal math handles the +1 for you.batch_size- default 1; only bump it if you know what you're doing, it multiplies VRAM.start_image- the whole point of I2V. Leave it empty and you've built a T2V setup instead.
A word on which path to pick
There are two ways to use this pack, and the README isn't loud about it. The all-in-one TurboDiffusionI2VSampler is the fast, distilled route - 4-step rCM sampling with the int8 TurboDiffusion checkpoints, and it's what the "100x speedup" chatter is about. The TurboWanSampler + KSamplerAdvanced route is the conventional one: you bring your own Wan model and sampler settings, which means no distilled speed unless you add the distilled weights yourself. If you're here for TurboDiffusion's speed, go all-in-one. If you want to stay in familiar ComfyUI territory with full sampler control, use this one.
Troubleshooting
- "Nothing happens / no video out" - this node produces no video; it produces conditioning and a latent. If you haven't wired
positive,negative,latentinto aKSamplerAdvancedand decoded the result, you'll see nothing. - Shape errors downstream - the latent is built for a Wan 16-channel video model. Running it through a non-Wan sampler or an SD-class VAE will fail at the shapes, not gracefully.
start_imagesilently ignored - the node resizes it to yourwidth/height; if your source is wildly off-aspect it'll letterbox rather than distort, and the effect shows up as a weird first frame.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| positive | CONDITIONING | Positive conditioning from CLIP Text Encode | |
| negative | CONDITIONING | Negative conditioning from CLIP Text Encode | |
| vae | VAE | VAE from VAE Loader | |
| width | INT | 48064–2048 | Video width in pixels |
| height | INT | 48064–2048 | Video height in pixels |
| length | INT | 1219–241 | Number of frames to generate |
| batch_size | INT | 11–64 | Batch size for generation |
| start_imageopt | IMAGE | Optional starting image for I2V | |
| clip_vision_outputopt | CLIP_VISION_OUTPUT | Optional CLIP vision conditioning |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| positive | CONDITIONING | — |
| negative | CONDITIONING | — |
| latent | LATENT | — |