Nodes/ComfyUI-UniAnimate-W/Animate image with Animate_X
ComfyUI Node

Animate image with Animate_X

The Animate-X cousin of UniAnimate, one checkpoint away

By Isi-dev·Created 2 years ago·Updated 11 months ago· 187
Animate image with Animate_X
  • reference_image
  • ref_pose
  • pose_sequence
  • video
  • empty_mask
seed13
steps30
useFirstFramefalse
frame_interval1
max_frames32
resolution_x512

Animate image with Animate_X is UniAnimate's sibling node from the same pack, built on Animate-X (the antgroup/animate-x project, page at lucaria-academy.github.io/Animate-X). It does the exact same job as "Animate image with UniAnimate" - photo in, skeleton sequence in, dancing video out - but through a different model that's better at one specific thing: keeping the character recognizable through a wider range of motion.

Animate-X's headline idea is the Explicit Pose Indicator (EPI): instead of just feeding the model raw skeleton frames, it explicitly encodes the pose of the reference character alongside the driving poses. That extra conditioning is what lets it handle big, expressive motion (the pack's demo is a cat doing a dance) without the identity drifting off. The tradeoff is it runs slightly slower - about eight minutes for 32 frames at [512, 768], versus seven for UniAnimate.

Inputs and outputs

The schema is a near-clone of UniAnimateImage, so if you've wired one you've wired both:

  • reference_image, ref_pose, pose_sequence - the photo plus the two pose outputs from the Align & Generate poses for UniAnimate node. Feed this node from Gen_align_pose just like you would the UniAnimate node.
  • seed, steps (default 30), frame_interval (default 1), max_frames (default 32), resolution_x (512 or 768).
  • useFirstFrame - set true to use the first pose frame as the reference, which is the key to chaining one generation onto another's last frame for longer animations.

Outputs are video (the IMAGE batch) and empty_mask (a zeroed mask template, one per frame, for compositing). Nothing exotic.

What it costs

Just one extra checkpoint. Everything UniAnimate needs is already on disk; Animate-X adds animate-x_ckpt.pth, dropped into the same checkpoints/ folder as the others. The pack README links it from the Animate-X HuggingFace repo (Shuaishuai0219/Animate-X) - it's the only file you grab specifically for this node.

Installation is otherwise shared with the pack: ComfyUI Manager (search "UniAnimate Nodes for ComfyUI") or git clone https://github.com/Isi-dev/ComfyUI-UniAnimate-W into custom_nodes/, restart, and make sure your other checkpoints are in place.

The honest comparison

For most people, this node versus UniAnimateImage comes down to one question: is your driving video's motion bigger than a polite wave? If yes, Animate-X's EPI conditioning usually holds the character together better. If no, UniAnimate is a touch faster and you already have its checkpoint. The author later shipped a v2 of this node (Animate image with Animate_X_v2) that adds the Implicit Pose Indicator from the paper and reports a slight quality bump - if you're starting fresh and have a moment, that's the one to try first. This v1 isn't obsolete, just the earlier draft. One more note: the README confirms Animate-X will run on free Google Colab up to 44 frames without OOM, so it's a viable option if your GPU can't hold 12GB.

Categoryimage

Inputs (9)

NameTypeDefaultDescription
seedINT130–16384
stepsINT3010–50
useFirstFrameBOOLEANfalse
reference_imageIMAGE
ref_poseIMAGE
pose_sequenceIMAGE
frame_intervalINT11–8
max_framesINT322–1024
resolution_xINT512512–768

Outputs (2)

NameTypeDescription
videoIMAGE
empty_maskMASK