Flexible I/O-Routing with matrix, dict and mc.

Arne Herrmann's icon

Hi to All!

I'm getting into MC and was hoping that with mc.targetlist I could solve an CC-Output-Idea I'm having (f.i.: small controller with 8 faders - with a pad pressed I want to instantly change to another mapped region, such as CC 21..28 FX Parameter 1..8, Pad pressed - Faders go to CC 41..48, therfore FX Param 9..16)

Unfortunately the voice argument doesn't seem to accept variables, which is also a pitty, because I wanted to use dictionary for several different mappings.

In advance - I know it would also be possible to do the flexible routing with a matrix/matrixctrl/switch/gate-situation, alternatively sends/receives and prepends, but I'm thinking of a general patcher, where every CC could be remapped to any CC - Preparing a matrix with 128 outputs and 128 prepends seems to be horrendous and I guess that I'm overlooking a clever solution .

Do you have an idea how to make that more adaptable and less of a copy/paste workflow? I don't want to prepare dozens of s/r, also the unjoin of the list would have to be adaptable to the variable length of the list.

Attached is a little pseudocode, to make it a bit more obvious.

PseudoCode for visualizing_ Left Part: Idea with mc.targetlist (with chans being an argument, voices unfortunately aren't variables) Right Part: An unflexible approach so far (which is fine for fixed setttings)