I’m sure it’s been done, and maybe it’s a silly one, but here goes:
Using Arturia Keystep with some hardware, I’d like its transport control to be sent to 1 midi channel, and its keyboard midi to another midi channel.
Hi, transport control messages like start, stop, continue, don’t have any channel information, so they apply to entire ports. You could use Midihub to split out this data into 2 MIDI output ports. Just use multiple lines with same input port, filter out the particular message types, and send to 2 different outputs. You may want to add Channel Remap pipe in case channel remapping is necessary for the note data.
Hey - thanks for taking the time.
I guess I’m such a novice I don’t even know how to split the data,
how to actually find out the data I need to split… and so on…
Is there anywhere here I can get a 101 on that?
In Midihub’s, processing, all data flows from left to right, it can be considered to be happening in parallel. If you need to process the same data in multiple ways, just place multiple ‘From X’ pipes in multiple pipelines, to do the processing differently. The Virtual pipelines allow sharing the processing pipes where common processing is desired.
Here the first line filters out everything but Real-Time messages, like Clock, Start, Continue, Stop, and send them to the MIDI OUT A port. The 2nd line keeps only Note On/Off messages, and has an optional Channel Remap there if you’d like to change the channel used before the data is sent to MIDI OUT B. (You only have to change Out Low and Out High to the desired port number - In Low and In High may remain 1-16 to modify notes in all channels)
By the way, this table summary of all of the MIDI messages is a great reference to know what information makes up which message. So you may refer to it when you’re interested in particular kinds of messages, like transport control, to see what those messages are made up of and understand what sort of processing is possible on them.