Nodes/ComfyUI-RvTools_v2/Pipe Out VC-Filename Generator I
ComfyUI Node

Pipe Out VC-Filename Generator I

Paths, frame caps and the mask counts — VC Filename Generator I, unpacked

By r-vage·Created about a year ago·Updated 5 months ago· 23
Pipe Out VC-Filename Generator I
  • pipe
  • path
  • rel_path
  • frame_load_cap
  • mask_first_frames
  • mask_last_frames
  • files

If you're combining video clips in a ComfyUI workflow, you've probably met the "VC-Filename Generator I [RvTools]" node - the thing that works out where your clips live and how many frames each side should keep. This is its unpack half. "Pipe Out VC-Filename Generator I" takes that generator's pipe and splits it into the individual values the combine nodes actually read.

Six outputs, no pipe passthrough: path, rel_path, frame_load_cap, mask_first_frames, mask_last_frames, and files.

The ones that matter for a video-join pipeline:

  • path (STRING) - the full path to the output video.
  • rel_path (STRING) - same path with the output directory prefix stripped, so downstream save nodes get the relative form. The source does this with a regex that lops off everything up to the output root.
  • frame_load_cap (INT) - how many frames to load for the clip.
  • mask_first_frames / mask_last_frames (INT) - the I-version's signature fields: how many frames to mask off at the start and end of the clip. These feed the crop/fade logic when two clips get joined, so you don't get a hard seam.
  • files (STRING) - the file names from the generator's internal file dict, stringified and stripped of brackets and quotes.

Mechanically, pure relay - a tuple unpack with the file list tidied into a readable string. All the path math happened in the generator upstream; this node is the socket on the wall.

The I and II versions are siblings with a split personality. II carries a simple_combine flag and a files_join output for the joining half; I carries the two mask-frame counts instead. In the pack's own Combine_Join_Test workflow they run side by side - I feeds the crop/mask side of the join, II feeds the combine side. If a workflow shows you both, that's not redundancy; that's the join needing the mask geometry and the file list, and the author chose to keep each bundle tight.

Installing it

Ships in ComfyUI-RvTools_v2. ComfyUI Manager: search "ComfyUI-RvTools_v2". Or:

cd ComfyUI/custom_nodes
git clone https://github.com/r-vage/ComfyUI-RvTools_v2

Restart ComfyUI. Dependencies (torch, numpy, Pillow, opencv-python, pilgram, pynvml, piexif) install through Manager. No model downloads.

Where people get burned

  • Pair it with the I generator. The I unpacker expects the I pipe (with mask_first_frames/mask_last_frames). Feed it a II pipe and you'll get a tuple ValueError the moment the workflow runs - the pipe wire type is shared, so nothing warns you at wiring time.
  • No pipe passthrough. Outputs only; place it where the values are consumed.
  • Deprecation. The RvTools v2 pack is unmaintained and the README points to ComfyUI_Eclipse. The video-combine nodes are precisely the ones to re-check there before you build new pipelines on them.
Category🫦 RvTools II/ Video

Inputs (1)

NameTypeDefaultDescription
pipepipe

Outputs (6)

NameTypeDescription
pathSTRING
rel_pathSTRING
frame_load_capINT
mask_first_framesINT
mask_last_framesINT
filesSTRING