Skip to content

Monitoring & Thru

A MIDI track with an input can pass what you play on to its own output — MIDI thru. This page explains what decides whether it does, and what happens to the notes on the way.

Monitoring is a track setting, as it is in a DAW. "off", the default, takes nothing from the input to the output: the input is connected but silent. "in" passes everything through. "auto" currently passes everything through, the same as "in".

The default is off because an input you didn’t ask to hear should stay silent: connecting a keyboard never makes a track start playing it.

A note passed through leaves on the track’s output port and the track’s channel, not the channel it arrived on. A keyboard sending on channel 1 into a channel-5 track plays channel 5. The track, not the keyboard, decides where its notes go — the same as for the notes of its pattern — so moving a track to another synth moves what you play on it too.

Resonon sends pattern notes early, by the time the audio takes to reach your speakers, so hardware lands with the mix (Clock & Alignment). A note you play is the other way round: it is a keypress happening now, and delaying it to line up with the audio buffer would only make the instrument feel late. So played notes get the port’s own trim, and nothing else.

An input and an output on the same virtual port form a loop: every note passed through arrives back at the input and is passed through again. Resonon watches the event rate, and when it runs away — thousands of events in a fraction of a second — it suspends thru, prints a warning, and tries again a second later. The session keeps playing. To avoid loops, use separate ports for input and output.

CC messages from every connected input are captured, whether or not a track uses that input, and Cc() reads the latest value. The value is a single number updated without a lock, so the audio thread can read it in every block.

When an input is disconnected, every track that was passing it through sends all-notes-off. Pulling a controller mid-performance doesn’t leave a held note ringing.