WanVideo ClipVision Encode
Turning your reference image into Wan I2V conditioning
- clip_vision
- image_1
- image_2
- negative_image
- image_embeds
Image-to-video is the Wan workflow people actually use, because pinning the first frame to a real image sidesteps a pile of consistency problems that pure text-to-video never solves. This node is the step that makes the model see that image. You've already loaded a CLIP vision model (via LoadWanVideoClipTextEncoder, despite its confusing name); this node runs your reference picture through it and produces the visual embeds the sampler conditions on.
What makes this one more than a plain encode is that it takes up to two images and a negative image, and lets you decide how they combine - so it's also the entry point for blending references or steering the look away from something.
How it works
CLIP vision reads your image into a semantic embedding - not pixels, but "what's in here" in a form the diffusion model understands. This node does that for one or two reference images, optionally subtracts a negative image, and merges everything into a single WANVIDIMAGE_CLIPEMBEDS bundle. The combine_embeds mode decides the blend math.
The inputs and outputs that matter
clip_vision(CLIP_VISION) - the loaded model from your CLIP vision loader.image_1- your primary reference.image_2(optional) - a second reference to blend in.strength_1/strength_2(default 1 each) - how much each image pulls. Ease these down if the reference dominates the motion.combine_embeds(averagedefault /sum/concat/batch) - how two images merge.averageis the safe default;concatkeeps both signals distinct instead of averaging them into mush.negative_image(optional) - a reference to push away from, withratiocontrolling how strongly it subtracts.crop(center/disabled) - center-crop to fit or leave the framing alone.
Output is image_embeds (WANVIDIMAGE_CLIPEMBEDS) → your Wan I2V sampler chain.
How to install it
ComfyUI Manager - search ComfyUI-WanVideoWrapper, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/kijai/ComfyUI-WanVideoWrapper
pip install -r ComfyUI-WanVideoWrapper/requirements.txt
then restart. It needs the Wan CLIP vision file in ComfyUI/models/clip_vision (from Kijai's WanVideo_comfy repo), loaded upstream - this node doesn't download anything itself.
Common issues & troubleshooting
Two references come out as a blurry average of both. That's combine_embeds: average doing exactly what it says. If you want the model to hold onto both distinct references rather than smear them, try concat or drop strength_2.
The reference overpowers your prompt. CLIP vision conditioning competes with your text. If the image is steamrolling the motion or scene you asked for, lower strength_1 - you rarely need it at a full 1.0 when you also have a detailed prompt driving the clip.
Resolution surprises. CLIP vision has its own expected input size and will crop to it. If framing matters, feed a pre-sized image (see WanVideoImageResizeToClosest) and consider crop: disabled so it doesn't lop off the edges you cared about.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| clip_vision | CLIP_VISION | — | |
| image_1 | IMAGE | Image to encode | |
| strength_1 | FLOAT | 1.0000–10 | Additional clip embed multiplier |
| strength_2 | FLOAT | 1.0000–10 | Additional clip embed multiplier |
| crop | COMBO | center | Crop image to 224x224 before encoding |
| combine_embeds | COMBO | average | Method to combine multiple clip embeds |
| force_offload | BOOLEAN | true | — |
| image_2opt | IMAGE | — | |
| negative_imageopt | IMAGE | image to use for uncond | |
| tilesopt | INT | 00–16 | Use matteo's tiled image encoding for improved accuracy |
| ratioopt | FLOAT | 0.500–1 | Ratio of the tile average |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image_embeds | WANVIDIMAGE_CLIPEMBEDS | — |