Nodes/VACE Automation/VACE Clip List (Up To 3)
ComfyUI Node

VACE Clip List (Up To 3)

The pack's simpler little brother

By EnviralDesign·Created 6 months ago·Updated 3 months ago· 0
VACE Clip List (Up To 3)
  • clip_1
  • clip_2
  • clip_3
  • clips
  • fps
  • clip_count
fps_1
fps_2
debugfalse
fps_3

VACE Clip List (Up To 3) is the old guard of this pack. Before the autogrowing VACE Clip Collector came along, this was how you assembled a clip list: exactly two required clips, one optional third, and FPS passed in by hand. The README is upfront that it's now "a small prototype/helper node" and that the preferred front-end for real use is the Collector - but it still works fine, and for a quick two-or-three-clip join it's genuinely less intimidating than the autogrow version.

How it works

Where the Collector reads everything out of native VIDEO objects, this node takes bare IMAGE frame batches and expects you to supply the FPS separately. That's why the fps_1 and fps_2 inputs are forced inputs - you can't leave them hanging, you have to wire them from whatever loaded the video (a VACELoadVideoFromPath, a video loader node, or a FPS output from your frame-extraction setup).

Given the clips and their FPS, the node validates the same things the Collector does: all clips must share resolution/channels, all FPS values must match within float tolerance. Same errors, same fix - re-encode or re-load the offending clip.

Inputs and outputs

  • clip_1, clip_2 (required IMAGE), clip_3 (optional IMAGE)
  • fps_1, fps_2 (required FLOAT), fps_3 (optional, but required if clip_3 is connected - the node throws if you wire a third clip without its FPS)
  • debug (boolean, default false) - prints each clip's frames and shape to the console

The three outputs mirror the Collector exactly: clips (an IMAGE list), fps (the validated shared FPS), and clip_count. Feed clips into VACE Clip Loop Start and you're off.

Installing it

It's part of comfy-vace-automation, which has no extra pip dependencies:

cd ComfyUI/custom_nodes
git clone https://github.com/EnviralDesign/comfy-vace-automation

Restart ComfyUI, or install via ComfyUI Manager by searching "comfy-vace-automation".

When it bites you

  • You wired clip_3 but forgot fps_3. The error is unmissable: fps_3 is required when clip_3 is connected. Clip and FPS are a matched pair here.
  • Forced FPS inputs. If you leave fps_1 unwired ComfyUI may try to treat it as a widget, and the node will either complain or you'll feed it a bogus default. Wire them properly.
  • FPS mismatch. The tolerance is tight (1e-6), so a 29.97fps clip next to a 30fps clip will error. Re-encode to match.

Should you use it or the Collector? If you're building anything more than a quick experiment, use VACE Clip Collector - one autogrow input instead of three clip+FPS pairs, and it reads FPS from the video itself so you can't miswire it. This node's real job today is being the small, easy-to-read version for when you already have three frame batches in hand and just want them grouped.

Categoryvideo/VACE

Inputs (7)

NameTypeDefaultDescription
clip_1IMAGE
clip_2IMAGE
fps_1FLOAT
fps_2FLOAT
debugBOOLEANfalse
clip_3optIMAGE
fps_3optFLOAT

Outputs (3)

NameTypeDescription
clipsIMAGE
fpsFLOAT
clip_countINT