Nodes/ComfyUI-WanVideoWrapper/WanVideo ClipVision Encode
ComfyUI Node Runs on cloud

WanVideo ClipVision Encode

Turning your reference image into Wan I2V conditioning

By kijai·Created about a year ago·Updated 2 months ago· 6,651
WanVideo ClipVision Encode
  • clip_vision
  • image_1
  • image_2
  • negative_image
  • image_embeds
strength_11.000
strength_21.000
cropcenter
combine_embedsaverage
force_offloadtrue
tiles0
ratio0.50

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 (average default / sum / concat / batch) - how two images merge. average is the safe default; concat keeps both signals distinct instead of averaging them into mush.
  • negative_image (optional) - a reference to push away from, with ratio controlling 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.

CategoryWanVideoWrapper

Inputs (11)

NameTypeDefaultDescription
clip_visionCLIP_VISION
image_1IMAGEImage to encode
strength_1FLOAT1.0000–10Additional clip embed multiplier
strength_2FLOAT1.0000–10Additional clip embed multiplier
cropCOMBOcenterCrop image to 224x224 before encoding
combine_embedsCOMBOaverageMethod to combine multiple clip embeds
force_offloadBOOLEANtrue
image_2optIMAGE
negative_imageoptIMAGEimage to use for uncond
tilesoptINT00–16Use matteo's tiled image encoding for improved accuracy
ratiooptFLOAT0.500–1Ratio of the tile average

Outputs (1)

NameTypeDescription
image_embedsWANVIDIMAGE_CLIPEMBEDS