Midi routing for multi-channel-midi processing plugins
Table of Contents:
Standard routing
When using several generators and synth in a hosts session, they normally connect one-to-one. The midi generator directly sending to the instrument producing the sound.
Per default the instruments listen to all arriving note information, but since only one generator sending to it, there is no notes mixup and therefore no further setup necessary and no need to specify output or input channels. .
Naive approach
If midi processing plugins are involved that take multiple instruments as input, one might think that one could simply route all generators to the plugin and let all instruments read from the plugin. But then all instruments would play the notes of all generators as that is the output of the processing plugin.
Furthermore since most generators default to send on midi channel one (drum type generators on channel ten) the processing plugin can't even distinguish where a note or midi event came from.
.
Working solution
To get the routing running as in the initial one-to-tone example
- The generators need to be set to different output channels to be destinctive for the midi processor and also for the instruments
- The instruments need to apply input filters so that one a specific selection of channels arrives at the intrument. The filter is in general not applied in the instrument plugin, but in the app hosting the instrument (AB3, AUM, apeMatrix, Cubasis, AuriaPro, BM3 etc)
.
Work-arounds for problem cases
Set Output Channel
If a generator plugin by itself wont't change channel, or forgets its channel settings one can allways insert a midi channel modifying plugin into the connection between the problematic generator and the multi midi input processing plugins forcing everything onto a specifiy channel. The midi au output channel wiki page summarizes all midi generating plugins regarding their ability to specify the midi output channel and state save this value.
- Midi Tools: Use the included ‚Midi Clone and Filter‘ plugin
- StreamByter script: Force Channel with GUI
- Mozaic: script: MIDI Channel Changer Pads
Host without midi matrix
If a hosts lack complex midi routing and only support midi plugins for a single track/slot, there is a pair of Mozaic scripts for host-wide midi transmission.
- Mozaic script: RadioMidi Transmitter and RadioMidi Receiver
Apply Input Channel Filter
If a host doesn't offer a midi input filter for their instrument slots, you can insert a scipt plugin into the connection between the the multi midi input processing plugin and the instrument.
- StreamByter script: Channel Filter with GUI
- Mozaic script: Midi Filter and Transpose