Nodes/TKNodes/Video Audio Fuse
ComfyUI Node

Video Audio Fuse

Bolt up to three audio streams onto your video in one node

By trashkollector·Created about a year ago·Updated a day ago· 1
Video Audio Fuse
  • image
  • audio1
  • audio2
  • audio3
  • image
  • audio
audio1_volume0
audio2_volume0
audio3_volume0

The classic video-generation workflow ends in a mess of loose wires: your LTX clip comes out as an image batch, your dialogue is one audio stream, your music bed is another, and ComfyUI core gives you no tidy way to mash them into one AUDIO you can hand to a save node. TKVideoAudioFuse is that tidy way - one node that takes a video (as an IMAGE batch) and up to three audio streams, mixes them together, and passes the whole package out as matched image + audio.

"Fuse/Overlay up to 3 audio streams and 1 video together," says the description, and that's exactly it. It's the pack's audio-merging utility pointed at video workflows, and it's the natural final step before you save or preview a finished clip.

How it works

Under the hood it's a mixer, not a fancy one. Each stream gets its volume adjusted, then the streams are combined by resampling them to a common sample rate, converting to mono, zero-padding the shorter one, and averaging the waveforms. audio1 is the anchor - it sets the master sample rate, so if your streams disagree about sample rates the node normalizes everything to audio1's.

The important subtlety: this is averaging, not summing with gain. That means the volume controls are relative, not absolute. Two streams both at 0 will come out quieter than either alone, because each gets halved in the mix. If you want voice-over to sit on top of music, nudge the music's audioN_volume down - the range is -10 to +10 with 0 being "normal," so a -3 on the bed and 0 on the voice gets you a readable result.

The inputs that matter

image is the video part - your decoded image batch, passed through untouched. audio1 is required and is the primary stream; audio2 and audio3 are optional and can be left unwired. Each stream has its own audioN_volume knob, and that's basically the entire interface. You don't set durations, you don't set sample rates, you don't set offsets - the streams get aligned by length automatically (shorter ones padded with silence).

Outputs

Two: the image batch unchanged and a single fused audio. Wire both into a save node or a video combine node and you're done. If you need stereo or true multi-channel output, this isn't the node - the mono mix is a real limitation, but for dialogue-plus-bed on a social clip it's perfectly fine.

Install

Standard TKNodes install: ComfyUI Manager, search "Handy Nodes", install, restart.

cd ComfyUI/custom_nodes
git clone https://github.com/trashkollector/TKNodes

Restart after cloning. This node pulls in the pack's audio stack - torchaudio and pydub among the dependencies - and FFmpeg needs to be on your system PATH for anything that processes audio files. No model downloads, though; this is pure signal math. Where people get tripped up: feeding streams that were already chopped to different lengths and expecting the fuse to magically time-align the content. It aligns the lengths. If the actual speech is offset relative to the video, trim or shift it upstream first.

CategoryTKNodes

Inputs (7)

NameTypeDefaultDescription
imageIMAGEthe video part - so it can be merged with up to 3 audio streams
audio1AUDIO1st Audio Stream - will be fused/merged with video, the images
audio1_volumeINT0-10–10Enter volume -10 lowest, 0 = normal, 10 = loudest
audio2optAUDIO2nd Audio Stream - will be fused/merged with video and all audio tracks
audio2_volumeoptINT0-10–10Enter volume -10 lowest, 0 = normal, 10 = loudest
audio3optAUDIO2nd Audio Stream - will be fused/merged with video and all audio tracks
audio3_volumeoptINT0-10–10Enter volume -10 lowest, 0 = normal, 10 = loudest

Outputs (2)

NameTypeDescription
imageIMAGE
audioAUDIO