For me the simplest approach is to set a single track’s input to the proper MIDI input (if your sequencer sends over more than one port, then choose ‘All MIDI inputs’), and the track’s output should be directed to the correct plugin or external MIDI instrument, while the channel is set to 'any’
Activate the record button for a single new/empty track as described above, start the transport, and record your take. It will record all 16 channels of input to a single track in one pass, but don’t worry, it’s super easy to turn this type 0 MIDI formatted MIDI track into a group of separated type 1 tracks!
Once your take is done, you can select the track (left click it so the track controls highlight), all the events on it (right click the track and choose ‘select all events’, the bars indicating data on the track should turn to a darker color), tap the ‘p’ key on your keyboard to expand the transport start and end locators to include all of your selected events, and then go to the MIDI menu and use the ‘Dissolve Part’ function to separate it into individual tracks according to MIDI channel.
A slightly more complex scenario:
What if you need to send 8 tracks to Halion 5, 4 tracks to Groove Agent 4, and 1 track to a dedicated grand piano plugin?
Option 1 (easiest): Just put it all on one track in a single pass as described above (it might sound like a train wreck during the initial recording pass, but will take less than 10 seconds to fix), ‘Dissolve’ the track, and then set the instrument outputs/channels of each track after the dissolve process.
Option 2: you’d need to set up three tracks (or more if you’re using multiple instances of any of these plugins).
Set the first with input ‘All MIDI inputs’, with output directed to Halion on channel ‘any’.
Set the second with input ‘All MIDI inputs’, with output directed to Groove Agent, channel ‘Any’.
Set the third track with input ‘All MIDI inputs’, with output directed to your Piano plugin, channel ‘Any’.
Use Transformer inserts (or local transformer filters) on each track (set to record insert output), configured as ‘channel range filters’ to delete any unwanted data on that track.
The logic you’d build with the transformer editor would work something like this (for channels 1-8 on the Halion track):
if (event channel is outside the range from channels 1-8) then (delete the event).
Now toggle the record button on for all three tracks.
Start the transport and record your take in a single pass.
Now, click in the controls area of your Halion track so it highlight.
Hold down the control key and click on the other two tracks you just recorded.
Right click the control area of either of the three tracks and choose ‘select all events’.
Tap ‘p’ on the keyboard to set the transport locators.
Go to the MIDI menu, and select ‘Dissolve Part’.
Now you should see a new group of tracks created that has split everything up by channel and instrument (type 1). You can go back and mute/hide/disable/or delete your initial merged (type 0) recording tracks if you like.
If this is something you do often, study up on the ‘project logic editor’, as that can allow you to build a ‘macro’ to automate many of the steps described above. You can assign your macros to key combos, MIDI remote controlled events, or simply locate them in the logical editor’s preset menu(s) with your mouse.
It should work with your initial described setup (where you set up individual tracks in advance) if you set input to ‘All MIDI inputs’ and output to channel ‘any’, then simply add a transformer insert to each track that deletes all events not-equal to the expected channel, and make sure the ‘record insert’ option is toggled on.
You’ll also need to make sure you’ve toggled the record button ON for each track.