Nodes/ComfyUI-MuseV/VHS_FILENAMES_STRING_MuseV
ComfyUI Node

VHS_FILENAMES_STRING_MuseV

The two-line bridge that turns a saved video path into a plain string

By chaojie·Created 2 years ago·Updated 2 years ago· 156
VHS_FILENAMES_STRING_MuseV
  • filenames
  • STRING

VHS_FILENAMES_STRING_MuseV is the plumbing of the ComfyUI-MuseV pack - a tiny node with one job, which is converting a VideoHelperSuite "filenames" signal into a plain text path. It exists because the vid2vid workflow needs it: MuseVRunVid2Vid takes a video_path as a STRING, but the pose video it should consume comes out of VHS_VideoCombine as a VHS_FILENAMES object, and those two don't talk to each other without an adapter. This is the adapter.

How it works

VideoHelperSuite's VHS_VideoCombine emits VHS_FILENAMES as a structured tuple - a count plus a list of the paths it just saved. The whole implementation here is:

return (filenames[1][-1],)

Take the list of saved files, grab the last one, hand it back as a STRING. That's it. It's not clever, and that's the point: in the shipped wf_vid2vid.json, the pose video generated by the DWPose pipeline flows out of VHS_VideoCombine, through this node, and straight into MuseVRunVid2Vid's video_path input. Because the path is produced at runtime instead of typed in, the workflow keeps working even if your ComfyUI folder moves - which is genuinely worth having, since the pack's default video_path string is a hardcoded path with a trailing space that breaks on first run.

Inputs and output

  • filenames (VHS_FILENAMES) - wire this from a VHS_VideoCombine "Filenames" output. Nothing else accepts it; you need VideoHelperSuite installed for the type to even exist.
  • Output: STRING - the absolute path of the last saved file. Feed it into MuseVRunVid2Vid's video_path, or any STRING input that wants a file location.

Install and gotchas

It ships with the ComfyUI-MuseV pack: install "ComfyUI-MuseV" via ComfyUI Manager, or git clone --recursive https://github.com/chaojie/ComfyUI-MuseV into ComfyUI/custom_nodes. You don't need the huge MuseV model download for this node alone - but the pack won't import without its Python dependencies, so expect to install requirements.txt and the OpenMMLab stack (openmim, mmengine, mmcv==2.0.1, mmdet==3.1.0, mmpose==1.1.0) regardless.

Two honest caveats. It returns only the last filename, so if your VHS_VideoCombine is set to also save multiple variants, you get the newest one and the count is dropped. And it's VHS-specific by design - there's nothing here you couldn't do with a one-line custom node, which is exactly what this is. If your workflow doesn't feed MuseV, you almost certainly don't need it. But inside this pack, it's the difference between a hardcoded broken path and a workflow that actually survives being shared.

CategoryMuseV

Inputs (1)

NameTypeDefaultDescription
filenamesVHS_FILENAMES

Outputs (1)

NameTypeDescription
STRINGSTRING