Skip to content

Buses and Sends

A mixer is not just strips. It is a routing graph that sums and groups them.

Buses are the shared destinations. Sends are the taps that send signal to them.

Getting these two right is what turns a pile of strips into a controllable mix. This page grounds the routing model in libsonare's Bus and send processors; for the gentler intro see Mixing Basics.

Buses: master, aux, submix

A bus is a destination that sums several signals. libsonare gives a bus a role:

  • Master — the final stereo output everything eventually reaches.
  • Aux — the return for sends, where a shared effect (one reverb, one delay) lives.
  • Submix — a group that collects related tracks (all the drums) so you can process and ride them as one.

A compressor on a drum submix glues the kit together; one fader then controls the whole kit. The master is special only in that it is the last bus in the graph.

Sends: parallel copies

An insert processes a track in series — the whole track passes through it. A send is different: it routes a copy of the track in parallel to a bus. Use sends for effects several tracks share, so a vocal, snare, and guitar can all sit in one reverb space without each carrying its own reverb.

Pre-fader vs post-fader

A send taps either before the fader or after it, and this is the routing decision people most often get wrong:

TapFollows the fader?Use for
Pre-faderNoHeadphone/cue mixes, effects that should stay constant while you ride the fader
Post-faderYesReverb/delay that should stay proportional to the balance
MIXER · SENDSIDLE
Pre-fader vs post-fader sends — drag the fader

One channel feeds two sends and the main output. Pull the channel fader down: the POST-fader send and the MAIN output follow it, because they are tapped after the fader; the PRE-fader send is tapped before it and stays put. Press play to hear it — the dry tone (post-fader) fades out while the pre-fader send (a stand-in for a reverb/aux return) keeps sounding even with the fader all the way down. That is why a vocal reverb fed pre-fader does not disappear when you ride the vocal down — the classic routing surprise.

Channel fader
0 dB

VCA groups vs submixes

A submix re-routes audio: the grouped tracks actually flow through the submix bus. A VCA group does not — VCA (voltage-controlled amplifier) is the console circuit this borrows its name from, and here it means a single fader that trims several tracks' levels at once without changing where their audio goes. Use a VCA when the parts must still reach different buses but you want one hand on their combined level.

How libsonare models routing

Buses are Bus objects carrying a BusRole (Master/Aux/Subgroup) and run a BusProcessor; FxBus hosts shared effects. There is no submix role value: at scene level the role field is a free string in which only master is interpreted specially, so submix, subgroup, group and anything else all compile to the same generic non-master bus (the built-in drum-bus preset writes "subgroup"). A SendProcessor taps a strip at a TapPoint chosen by SendTiming (pre/post-fader) and feeds a destination bus. VcaGroup applies a shared gain offset across member strips without re-routing audio. The whole graph — strips, buses, sends, connections — is described by a serializable scene and runs with plugin delay compensation (PDC) so parallel paths stay time-aligned. See Mixing Scene JSON for the field-level format.

Related: Mixing Basics, Channel Strip, Automation and Metering, Mixing Scene JSON