Audio Mixer ποΈ
Four Tracks, Gain, Pan, Mute β a Mini Console Inside Your Graph
- audio_1
- audio_2
- audio_3
- audio_4
- audio
- summary
You've got a voiceover, a music bed, and maybe a sound effect, and you need them to come out as one balanced track. ComfyUI doesn't ship a mixer - the closest you'll get is adding waveforms by hand, which nobody wants to do. Audio Mixer is a 4-channel mini console: per-track gain in dB, stereo pan, and mute, plus a master gain, all in one node that sums to a stereo mix.
The four track inputs (audio_1 through audio_4) are all optional, which is the practical detail: leave audio_2 empty and the node just mixes the three you connected. Unconnected optional inputs arrive as None and are skipped - ComfyUI's standard convention, handled cleanly here. So it's one node that works whether you're mixing two tracks or four.
For each track you get the same three controls, and they're the ones any mixing beginner should actually understand:
gain_db_1β¦4- per-track level,-60to+12dB. This is your "how loud is this element" knob. Start everything at 0 and trim down the bed so the voiceover sits on top; the classic beginner move is pushing everything up, which just sums into clipping.pan_1β¦4- stereo position,-1(full left) to+1(full right), 0 center. Keep dialogue centered, spread the music bed wide.mute_1β¦4- silences a track without removing it from the graph. The killer feature for A/B'ing a mix: flip a mute on, run, flip it off - no deleting wires.
Then master_gain_db is the output trim, the thing you touch last, after the balance is right. Balance with the per-track gains, then use master to land the whole mix at a sane overall level (or feed the result into Audio Normalize if you want a specific target).
The outputs are audio (the stereo sum, ready for a save node or Video Mux Audio) and a summary string describing the mix for your logs.
The honest limits
It's a straight mixing console, not a mastering suite - no EQ, no compression per channel, no metering beyond a summary string. Four tracks is the ceiling, so a full orchestral stem stack needs either a chained mixer or a different tool. And summing tracks means clipping is your problem: if three tracks each peak near 0 dB, the sum will clip, and this node doesn't protect you from that. That's what the -3 target on Audio Normalize downstream is for.
Install
ComfyUI Manager β search OmniNodes, or:
cd ComfyUI/custom_nodes
git clone https://github.com/TensorVizion/OmniNodes
Restart ComfyUI; it's under TensorVizion/Audio. Pure NumPy/PyTorch, no extra dependencies. For the "several generated tracks into one balanced result" job, it's the node the pack is built around.
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| master_gain_db | FLOAT | 0.0-60β12 | β |
| gain_db_1 | FLOAT | 0.0-60β12 | β |
| pan_1 | FLOAT | 0.00-1β1 | β |
| mute_1 | BOOLEAN | false | β |
| gain_db_2 | FLOAT | 0.0-60β12 | β |
| pan_2 | FLOAT | 0.00-1β1 | β |
| mute_2 | BOOLEAN | false | β |
| gain_db_3 | FLOAT | 0.0-60β12 | β |
| pan_3 | FLOAT | 0.00-1β1 | β |
| mute_3 | BOOLEAN | false | β |
| gain_db_4 | FLOAT | 0.0-60β12 | β |
| pan_4 | FLOAT | 0.00-1β1 | β |
| mute_4 | BOOLEAN | false | β |
| audio_1opt | AUDIO | β | |
| audio_2opt | AUDIO | β | |
| audio_3opt | AUDIO | β | |
| audio_4opt | AUDIO | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| audio | AUDIO | β |
| summary | STRING | β |