Nodes/VideoX-Fun/Video To Pose
ComfyUI Node

Video To Pose

VideoX-Fun's built-in pose extractor for control videos

By aigc-apps·Created 2 years ago·Updated 21 days ago· 2,174
Video To Pose
  • input_video
  • images
video_length81

If you're feeding a control_video into Wan2_2FunV2VSampler or CogVideoXFunV2VSampler for pose-driven generation, this is the node that produces it - it converts a regular source video into an OpenPose skeleton sequence, so you don't need to leave this pack or install a separate controlnet-aux preprocessor just to get pose conditioning working.

It's worth being clear about scope, though: this only covers pose. If you want Canny edges, depth maps, or MLSD lines for a -Control checkpoint instead of -Pose, VideoX-Fun doesn't ship extractors for those - you'll need ComfyUI's separate controlnet-aux pack for anything beyond pose.

How it works

Feed it a video (as an IMAGE batch - however many frames you loaded), tell it how many frames to process, and it runs pose detection frame-by-frame, returning a batch of skeleton-visualization images in the same OpenPose style the wider ControlNet ecosystem uses. That output is exactly what a -Pose CogVideoX-Fun checkpoint, or a pose-conditioned Wan-Fun -Control checkpoint, expects as its control signal.

The inputs that matter

  • input_video (required, IMAGE) - your source clip as a frame batch. Load it with a standard video-loading node upstream; this node itself doesn't handle file I/O.
  • video_length - default 81, range 1-81, step 4. Note this caps at 81, not the 161 some Wan samplers allow - match it to however many frames you actually plan to condition on downstream.

Output: images - the pose-skeleton frame batch, wired directly into a control_video input.

Installing it

Ships with the base VideoX-Fun pack, nothing extra to install for this node specifically. Search ComfyUI Manager for VideoX-Fun; if it's not indexed there:

cd ComfyUI/custom_nodes
git clone https://github.com/aigc-apps/VideoX-Fun
pip install -r VideoX-Fun/requirements.txt

Restart ComfyUI.

Common issues

Pose detection misses limbs or gets confused on fast motion. This is a general limitation of frame-by-frame pose estimation, not specific to this node - motion blur and occlusion both degrade detection quality. If your source clip has quick or complex movement, expect some frames to come out with partial or wrong skeletons, and consider a cleaner, more static source clip if pose accuracy matters a lot for your shot.

video_length doesn't match your downstream sampler's setting. Keep this consistent with whatever video_length you set on the sampler node consuming the control_video output - a mismatch means the conditioning video and the generation length don't line up frame-for-frame.

Wanted Canny or Depth instead of pose. Wrong node - this one only does OpenPose. Reach for ComfyUI's controlnet-aux preprocessor pack for anything else; it's a completely separate install from VideoX-Fun.

Output looks right but the downstream sampler ignores it. Double-check you're on a checkpoint that was actually trained for pose/control conditioning (-Pose for CogVideoX-Fun, -Control for Wan-Fun) - feeding a pose control video into an -InP checkpoint's sampler does nothing, because that model was never trained to read it.

CategoryCogVideoXFUNWrapper

Inputs (2)

NameTypeDefaultDescription
input_videoIMAGE
video_lengthINT811–81

Outputs (1)

NameTypeDescription
imagesIMAGE