Skip to content
Node packVerifiedExternal
Open source

ComfyUI-Wan-VACE-Prep

ComfyUI nodes designed to help make common video editing tasks with video generation models less complicated. Smooth transitions, extensions, outpainting. Primarily designed for Wan VACE, with some LTX-2 support.

Maintainer@stuttlepressBgrade

Package profile

Status
Verified
Publisher
@stuttlepress
Source
GitHub
Stars
103

README

Wan VACE Prep

A small collection of ComfyUI nodes for common video tasks. Primarily designed for Wan VACE, with LTX-2 outpainting support.

Note: As of v1.1.0, all code has been migrated to ComfyUI's Nodes 2.0 (V3) API. Nodes are still 100% compatible with the legacy ComfyUI renderer. There should be no noticeable changes in behavior, but please report any problems you encounter. v1.0.25 is the last legacy (pre-V3) release.

Quick Start

Install via ComfyUI Manager: Search for "Wan VACE Prep"

Or clone this repository:

cd /path/to/comfyui/custom_nodes
git clone https://github.com/stuttlepress/ComfyUI-Wan-VACE-Prep

Nodes

Experimental:

Video Outpaint

Prepares a video for outpainting using an interactive canvas widget. Position and size an output window over your source frames. Regions outside the source become the outpaint area. A model selector targets Wan VACE, LTX-2, or MiniMax H3: each sets its own quantisation grid and pad color.

Renamed from VACE Outpaint.

Video Outpaint Node

Parameters:

ParameterDefaultDescription
imagesSource video frames

Canvas controls:

ControlDescription
output resolutionWidth and height of the generated output. Leave at 0 to match the crop box size.
modelConsumer model. Sets the quantisation grid and the pad color together: wan = 16px grid, gray (0.5); ltx = 32px grid, black (0.0); h3 = 32px grid, gray (0.5). Changing it re-snaps the crop box and output resolution onto the new grid.
padmodel default uses the pad color above; custom enables the color field: a hex code (#RRGGBB), 0-255 integers (R,G,B), or 0.0-1.0 floats (R,G,B).
gridGrid override in output pixels. Leave blank (0) to use the model's grid.

Why the grid matters. A model's mask cell is its VAE spatial compression times the transformer's patch size: 16 for Wan (8x VAE, 2x2 patch), 32 for LTX-2 (32x VAE, 1x1 patch) and MiniMax H3 (16x VAE, 2x2 patch). A mask boundary that is not a multiple of that cell lands mid-cell, and the consumer must either freeze it (pad color is encoded as clean content, drawing a frame around the kept region) or regenerate it (up to grid-1 px of real footage replaced, which reads as edge blur). Both output paths here emit the kept rect on the grid, so every cell is purely content or purely pad.

Upgrading from an older version. The pad color widget became model in the same slot, so saved workflows load without edits: wan and ltx map straight across, and a custom pad color becomes wan + pad: custom, which is what it did before. Saved ltx workflows do change behavior - their grid goes from 16 to 32, re-snapping the layout. That was the bug; the node logs the snap when it happens.

Outputs:

OutputDescription
control_videoVACE control video input. Source content placed within the output window; overhanging regions filled with the selected pad color.
control_maskVACE control mask input. White (1) where outpainting should occur, black (0) over source content.
width, heightOutput video dimensions
lengthFrame count

https://github.com/user-attachments/assets/a233832a-6630-4e7b-8d05-9e048d2e97a4

This node may be fragile under Nodes 2.0 / V3. ComfyUI has not

Nodes in this pack

12 nodes
  • ConstrainedInt
  • Duration
  • FrameNumberOverlay
  • LoadVideosFromFolderSimple
  • VACEOutpaint
  • WanFMLF2V
  • WanVACEBatchContext
  • WanVACEExtend
  • WanVACEFirstMiddleLast
  • WanVACEInpaint
  • WanVACEPrep
  • WanVACEPrepBatch

Related resources

1 connection

Sources

3 sources
GitHubSourceVersion f04e44cd24204ba03bfd27bd97711686333c1138
github.com/stuttlepress/ComfyUI-Wan-VACE-Prep

Verified Oct 22

Source excerpts

1 excerpt

Source context: Repo stuttlepress/ComfyUI-Wan-VACE-Prep