Nodes/ComfyUI-LongCat-Avatar/LongCat Avatar Vocal Extract
ComfyUI Node

LongCat Avatar Vocal Extract

Pull the vocals out of a song and hand them to the avatar

By rookiestar28·Created 3 months ago·Updated 23 days ago· 34
LongCat Avatar Vocal Extract
  • audio_encoder
  • audio
  • audio
  • audio_path

LongCat_Video_SM_Vocal is the pack's "make the avatar sing along" node. It takes an audio clip plus the vocal-separation model loaded by LongCat Avatar Vocal Model, runs the audio through audio-separator (an ONNX UVR pipeline under the hood), and returns the isolated vocal track. You use it when your source audio is a full mix - a song, a podcast with a bed of music, a clip with crowd noise - because LongCat's Whisper-based conditioning works best when it's syncing to a voice, not to drums and bass. Feed it the stems, get clean speech, then run that into LongCat Avatar Audio Encode.

How it works

The node materializes your ComfyUI AUDIO to a temp file, runs the ONNX separator (the Kim_Vocal_2.onnx model your LongCat Avatar Vocal Model node loaded), and hands back two things: the extracted vocal track as an AUDIO object, and a string audio_path pointing at the saved vocal file in the output directory. The audio then flows into the normal conditioning chain just like any other clip.

The inputs

Only two:

  • audio_encoder - the AUDIO_ENCODER from LongCat Avatar Vocal Model. This node and its loader are a pair; wiring one without the other gets you an error about a missing separator.
  • audio - any ComfyUI AUDIO source: a LoadAudio, or downstream of LongCat Avatar Audio Crop if you want to separate only a slice.

Outputs are audio (AUDIO, the isolated vocals) and audio_path (STRING, where the vocal file was written).

Install and prerequisites

Shared pack install, plus one system requirement:

cd ComfyUI/custom_nodes
git clone https://github.com/rookiestar28/ComfyUI-LongCat-Avatar
cd ComfyUI-LongCat-Avatar
pip install -r requirements.txt

or ComfyUI Manager → search ComfyUI-LongCat-Avatar → restart. Then make sure an ffmpeg binary is on the PATH that launches ComfyUI - audio-separator shells out to it, and a Python imageio-ffmpeg wheel does not satisfy that lookup. sudo apt-get install ffmpeg on Debian/Ubuntu, brew install ffmpeg on macOS (for the dev env, though inference is CUDA-only), or conda install -c conda-forge ffmpeg. Verify with ffmpeg -version from the same terminal that starts ComfyUI.

You also need Kim_Vocal_2.onnx in ComfyUI/models/longcat/ (see the LongCat Avatar Vocal Model page) - it's a manual download, not auto-fetched.

Where people get burned

The most common failure is environmental: an ffmpeg "command not found" or subprocess error inside the separator means the executable isn't on the PATH ComfyUI sees - fix the binary, not the node. Second, this node needs its loader's model selected; with audio_encoder_vocal set to none on the loader, separation quietly doesn't do what you expect. And be realistic about what separation buys you: it's a quality-of-input step, so a heavily mixed song still gives you imperfect vocals, and the avatar can only be as clean as the stem you hand it. If you have clean TTS or a raw voice recording, skip this node entirely - the pack doesn't need it to make a talking head.

CategoryLongCat Avatar

Inputs (2)

NameTypeDefaultDescription
audio_encoderAUDIO_ENCODER
audioAUDIO

Outputs (2)

NameTypeDescription
audioAUDIO
audio_pathSTRING