Nodes/ComfyUI-WanVideoWrapper/WanVideo Empty Embeds
ComfyUI Node Runs on cloud

WanVideo Empty Embeds

The text-to-video starting point in a WanVideoWrapper graph

By kijai·Created about a year ago·Updated 2 months ago· 6,651
WanVideo Empty Embeds
  • control_embeds
  • extra_latents
  • image_embeds
width832
height480
num_frames81

Every Wan generation in the wrapper needs an image_embeds going into the sampler - it's how the sampler knows the output's width, height, and frame count. For image-to-video you build that from a reference image. For text-to-video, there's no reference image, so you need an empty one that just carries the geometry. That's this node. It's the T2V equivalent of an empty latent: no picture conditioning, just "make me a clip this big, this many frames long." If you're doing pure prompt-to-video on Wan, this is where your canvas is defined.

Think of it as the humble but mandatory starting block of a text-to-video graph.

How it works

It produces a WANVIDIMAGE_EMBEDS bundle that encodes the target dimensions and frame count but contains no image conditioning. The sampler reads the size from it and generates from noise, steered only by your text embeds. It also has optional slots to fold in a control-embeds stream or extra latents, so the same "empty" starting point can carry ControlNet conditioning or injected latents when you need them.

The inputs and outputs that matter

  • width / height (defaults 832 x 480) - your output resolution. 832x480 is standard Wan 480p; go 1280x720 for 720p if the card allows.
  • num_frames (default 81, step 4) - clip length in frames. 81 is Wan's native ceiling (~5 seconds at 16fps); the step of 4 reflects the VAE's ~4x temporal compression, so counts want to land on the 4n+1 grid.
  • control_embeds (WANVIDIMAGE_EMBEDS, optional) - fold in a ControlNet embeds stream for guided T2V.
  • extra_latents (LATENT, optional) - inject additional latents into the starting point.

Output is image_embeds (WANVIDIMAGE_EMBEDS), wired straight into WanVideoSamplerv2.

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. No downloads - it just defines geometry.

Common issues & troubleshooting

Dimension or shape errors at the sampler. Wan is picky about resolutions and frame counts. Keep width/height on multiples of 8 (the node enforces the step) and let num_frames land on the 4n+1 pattern the VAE expects - 81 is the canonical value for a reason. Odd frame counts are a classic source of a clip coming back a couple of frames short.

Out-of-memory as you scale up. Both resolution and frame count drive VRAM hard on video. If 1280x720 at 81 frames OOMs, drop to 480p, shorten the clip, or lean on offloading and a cache - video memory scales with the whole latent volume, not just the frame size.

You actually wanted image-to-video. If you meant to animate a reference image, this isn't your node - empty embeds carry no picture. Use a CLIP-vision encode path (WanVideoClipVisionEncode) or the image-clip encode to build embeds that actually contain your image.

CategoryWanVideoWrapper

Inputs (5)

NameTypeDefaultDescription
widthINT83264–8096Width of the image to encode
heightINT48064–8096Height of the image to encode
num_framesINT811–10000Number of frames to encode
control_embedsoptWANVIDIMAGE_EMBEDScontrol signal for the Fun -model
extra_latentsoptLATENTFirst latent to use for the Pusa -model

Outputs (1)

NameTypeDescription
image_embedsWANVIDIMAGE_EMBEDS