Nodes/ComfyUI-WanAnimatePlus/WanAnimatePlus EverAnimate Embeds
ComfyUI Node

WanAnimatePlus EverAnimate Embeds

EverAnimate's segmented conditioning bundle

By wuwukaka·Created 4 months ago·Updated about a month ago· 409
WanAnimatePlus EverAnimate Embeds
  • vae
  • pose_images
  • face_images
  • anchor_images
  • bg_images
  • mask
  • image_embeds
width832
height480
num_frames734
force_offloadtrue
frame_window_size77
pose_strength1.000
face_strength1.000
num_video_anchor_latents4
num_motion_latents1
num_overlap_frame4
use_pingpongtrue
use_image_anchortrue
use_random_frame_anchortrue
random_anchor_with_user_firsttrue
use_repeat_anchorfalse
tiled_vaefalse

Most Wan Animate embeds nodes build conditioning for one chunk. This one builds conditioning for a whole run of them. EverAnimate is the fork's segmented-sampling mode: instead of you hand-chaining 81-frame generations and praying the identity survives each seam, this node computes how many segments your target length needs, prepares the pose/face/anchor conditioning for every segment, and hands the sampler one image_embeds bundle for the entire take. The default num_frames of 734 is not a typo - this node is built for minute-scale clips.

How it works. num_frames sets your total output. frame_window_size (default 77, and it must be 1 mod 4 - 77, 81, 85) sets how many frames each segment actually produces, and num_overlap_frame (default 4) sets how much adjacent segments share so the seams have something to blend. The node then slices your pose_images and face_images (the face stream is resized to 512x512 internally) to fit each segment, ping-ponging them when your control video is shorter than the target - that's use_pingpong, on by default, extending pose/face/bg/mask by mirroring rather than stopping.

The anchor system is the identity trick. Each segment gets num_video_anchor_latents (default 4) prepended as anchor slots that pin the character. Where do the anchors come from? use_image_anchor uses generated frames from segment 0 to build anchors for later segments - the model effectively babysits its own identity. use_random_frame_anchor randomly samples those segment-0 frames for the job, and random_anchor_with_user_first reserves the first manual anchor as your user anchor so the character starts from your reference, not a random frame. use_repeat_anchor (off by default) repeats your manual anchor sequence to fill empty slots. The manual inputs themselves go into anchor_images - a sequence of identity frames, or a video treated as an anchor-frame sequence rather than source-video conditioning. That's the deliberate part: EverAnimate is continuity-first, not edit-base.

What you'll actually touch. Keep frame_window_size at 77 unless you know you need longer segments. The default anchors (4 slots, random sampling on) are a reasonable first pass; if your character drifts between segments, your first move is more/better anchor_images, your second is num_video_anchor_latents. pose_strength/face_strength still work as your control multipliers, bg_images + mask give you background/inpaint, and tiled_vae stays off unless VRAM is tight. Output image_embeds goes straight to the WanAnimatePlus Sampler.

The honest caveat. This is the least-proven node in the pack - no real community footprint, so treat the defaults as the author's starting point rather than a tuned recipe. And the fork-wide rule applies harder here: the whole chain must be WanAnimatePlus nodes, because segmented embeds and the sampler's chunk handling have to agree on the latent layout. Install via ComfyUI Manager (search "WanAnimatePlus") or git clone https://github.com/wuwukaka/ComfyUI-WanAnimatePlus into custom_nodes, then restart.

CategoryWanAnimatePlus

Inputs (22)

NameTypeDefaultDescription
vaeWANVAE
widthINT83264–8096Width of the video to generate
heightINT48064–8096Height of the video to generate
num_framesINT7341–10000Total output frames. Segment count is computed from this, frame_window_size, and num_overlap_frame.
force_offloadBOOLEANtrueOffload VAE after encoding to save VRAM
frame_window_sizeINT771–10000Effective output frames per EverAnimate segment. Must be 1 mod 4, e.g. 77, 81, 85.
pose_strengthFLOAT1.0000–10Additional multiplier for the pose adapter
face_strengthFLOAT1.0000–10Additional multiplier for the face adapter
pose_imagesIMAGEPose control video
face_imagesIMAGEFace control video. Resized to 512x512 internally.
num_video_anchor_latentsINT41–4Number of anchor latent slots prepended to each EverAnimate segment
num_motion_latentsINT10–4Number of previous-segment motion latents used for continuity
num_overlap_frameINT40–10000Overlapping output frames between adjacent segments
use_pingpongBOOLEANtruePing-pong extend pose, face, bg, and mask sequences when more frames are needed
use_image_anchorBOOLEANtrueUse generated frames from the first segment to build later video anchors
use_random_frame_anchorBOOLEANtrueRandomly sample generated segment-0 frames for later video anchors
random_anchor_with_user_firstBOOLEANtrueIn random-anchor mode, reserve the first manual anchor frame as the user anchor
use_repeat_anchorBOOLEANfalseWhen fewer manual anchor frames are provided than anchor slots, repeat the provided sequence to fill the missing slots
anchor_imagesIMAGEManual identity/anchor image frames. Video inputs are treated as an anchor-frame sequence, not as source-video conditioning.
bg_imagesoptIMAGEOptional background/inpaint video
maskoptMASKOptional mask paired with bg_images
tiled_vaeoptBOOLEANfalseUse tiled VAE encoding for reduced memory use

Outputs (1)

NameTypeDescription
image_embedsWANVIDIMAGE_EMBEDS