Nodes/comfyui-mixlab-nodes/Load And Combined Audio
ComfyUI Node Runs on cloud

Load And Combined Audio

Load And Combined Audio — Merging and Trimming Clips in Mixlab

By MixLabPro·Created 3 years ago·Updated 2 months ago· 1,859
Load And Combined Audio
  • audios
  • audio_file_path
  • audio
start_time0.00
duration10.00

Load And Combined Audio does exactly what its slightly clunky name promises: it loads audio, combines it, and hands you back one trimmed clip. It sits inside Mixlab's audio corner alongside the pack's speech-recognition and speech-synthesis nodes - the README points at a "Preview Audio" workflow and a text-to-audio base workflow that this kind of node is meant to feed into.

The audios input is typed AUDIOBASE64, which is worth pausing on, because it's not the same type as ComfyUI's native AUDIO. AUDIOBASE64 is Mixlab's own front-end format - audio captured or assembled through the pack's own browser-side widgets, encoded as base64, rather than a file loaded by a standard LoadAudio node. In practice that means this node's front-end widget is where the "combining" actually happens: you add multiple clips or recordings through the node's own UI, it stitches them together on the JS side, and the Python side receives the result as one combined base64 payload. That's also the node's real value - you're not meant to wire in ComfyUI's stock audio nodes here, you're meant to use Mixlab's own audio capture/upload flow.

Once it has that combined audio, start_time and duration - both floats, in seconds - trim the result down to a window. start_time defaults to 0; duration defaults to 10 seconds, and its minimum of -1 strongly suggests -1 is meant as "don't cut, use everything from start_time to the end" rather than a literal negative-length clip, though the pack doesn't spell that out anywhere the README covers.

Two outputs come back: audio_file_path, a plain STRING pointing at the trimmed file on disk, and audio, a proper ComfyUI AUDIO object for anything downstream that expects the native type - a preview node, a waveform display, or another audio-processing node in the pack. Having both matters because some tools want the in-memory object and others (anything shelling out to an external binary, or another node that just wants a path string) want the file location instead.

Installing it is the standard Mixlab path, same as every other node here. Quickest is ComfyUI Manager - search "comfyui-mixlab-nodes," install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/shadowcz007/comfyui-mixlab-nodes.git
cd comfyui-mixlab-nodes
install.bat

or pip3 install -r requirements.txt in a venv, or the embedded-python pip call on a portable Windows build. Restart ComfyUI when it's done. This particular node doesn't need a model download of its own - it's plumbing, not inference - but it lives in a pack that also ships ChatTTS integration, SenseVoice, and a Fish Speech TTS pipeline, so if audio nodes as a category interest you, expect to be downloading models for those neighbors even if this specific node needs nothing extra.

The most likely place to get stuck is the type mismatch mentioned above: if you try to wire ComfyUI's built-in LoadAudio node straight into audios, it won't connect, because that node outputs AUDIO, not AUDIOBASE64. This node wants audio that came in through Mixlab's own capture widget specifically. If you're building a workflow that needs to combine audio files you already have on disk rather than record fresh through the browser, this isn't the node for that job - you'd want a standard audio-loading node feeding a different combiner, not this one.

Category♾️Mixlab/Audio

Inputs (3)

NameTypeDefaultDescription
audiosAUDIOBASE64
start_timeFLOAT0.000–10000000
durationFLOAT10.00-1–10000000

Outputs (2)

NameTypeDescription
audio_file_pathSTRING
audioAUDIO