Midi filter rule syntax

Hi,

I’m just investigating the midi filter rules option in webconf. I wanted to say that this is really a nice and powerful feature! :slight_smile:

I’m using some midi note events to navigate the zynthian gui (as described here: https://wiki.zynthian.org/index.php/Zynthian_UI_Users_Guide#Controlling_the_UI_with_MIDI_messages) - it works really excellent, and at the same time, with the help of the filter rules, I can make the CC events available to the first channel.

MAP CH#15 CC => CH#0 CC

Now, is there a way of mapping this also to other channels at the same time, like

MAP CH#15 CC => CH#0 CC
MAP CH#15 CC => CH#1 CC
MAP CH#15 CC => CH#2 CC
MAP CH#15 CC => CH#3 CC

or

MAP CH#15 CC => CH#0 CC
MAP CH#0 CC => CH#1 CC
and so on

(which both seem ok syntax-wise but do not work)

or

e.g. like MAP CH#15 CC => CH#0:3 CC?

(which is rejected syntax-wise).

Does it make sense to allow the range operator “:” also for channel numbers?

Another thing that I noticed is that the more concise

MAP CH#15 CC => CC
or
MAP CH#15 CC#7 => CC#7

i.e. mapping all CC events from the master channel to all channels does however not have the intended effect. I checked with CC 7 (volume) which is not captured by the volume setting of channel 1, for example.

Here, a rule like MAP CH#15 CC => CH#0:14 CC would come in handy.

But I don’t know how useful this actually is. It’s just me playing around and discovering new features :wink:

Range operator “:” should be working for CC and CH. Mappings n =>1 are implemented too.This should work:

MAP CH#0:14 CC#0:127 => CH#15 CC#0:127

and this too:

MAP CH#0:14 CC => CH#15 CC

If it’s not working, then there is a bug :wink:

Regards

1 Like

We could do with a detailed write up of this
In the wiki

1 Like

Ahh! I missed to say that N => 1 mapping is not supported. So this:

MAP CH#15 CC => CH#0:14 CC

wont work. And if you make something like this:

MAP CH#15 CC => CH#0 CC
MAP CH#15 CC => CH#1 CC
MAP CH#15 CC => CH#2 CC
MAP CH#15 CC => CH#3 CC

The latest rule will overwrite the other ones. Sorry, but this limitation is quite difficult of remove without changing the internal architecture of the MIDI filter. Of course, it’s in TODO list, but don’t expect to see that working in the next weeks.

Regards,

2 Likes