@civilization 3 said:
This, very definitely. I ran into a very irritating situation I had to work around with Cubase where it wants to send the drum map to a target, a channel and there's no specifying a port,
Basically in Cubase, each midi track is routed to one midi port of one instrument plugin. in the inspector on the left you choose which one. The plugin could be in the rack or not...doesn't matter, but you have to specify somewhere to send the midi, and Cubase basically will take something like, for example, VePro.VST3 and will give you a list of 48 ports to choose from for routing that track to. You have to choose one. There is no way to dynamically route one midi track to two different ports at the same time, unless you can somehow sneak it through with tricks like this KSP trick.
EDIT: To the above, there is actually possibly one sneaky way in Cubase to send to multiple ports using midi sends, but no way to specify that from the ExpressionMaps anyway.
And also ExpressionMaps don't have any way to specify port either, it assumes you are working all expression map routing within the confines of a single midi port.
But if you have some other way to route that can be triggered via keyswitch (like the KSP example), then you can add keyswitches to your expression map which will essentially route across ports. The challenge still can end up being a factor of what expression maps do and don't do. For example, ExpressionMaps don't resend keyswitches for every note...they only send the keyswitches when the articulation changes. For example, if you have three staccato notes in a row, it will send the keyswitch once before sending all three notes after that with no more keyswitches until a new articulation is encountered. That is generally more efficient..
The KSP approach I shared on VI-control will work fine with that! It just assumes the last port specified should be the one to keep using until another one comes along.
Another approach, would be to use the AU2 version of VePro plugin, which can use CC99 as a port keyswitch. However, I believe (not sure), that requires CC99 to be in front of every single note...and whenever its missing it assumes port-1. I can't remember now.
But anyway, these are definitely getting in the realm of "is it worth it". Sometimes it might be! Sometimes not.
I know I definitely like having one source track per instrument. And sometimes I need more than 16 articulations...so.. That's where it all comes into play.
LogicPro generally has more options with AU3, because basically all midi on a track gets merged into a single midi stream before going to the VePro plugin. So you can use Scripter to move events across ports, etc.. so it can easily handle instruments with 17+ articulations with a little scripting. Cubase, unfortunately, is more limiting in that regard. And neither one of them make it very easy since its not built into articulation sets or Expression maps to do it.