Difference between revisions of "MIDI Filter Rule Language"
Jump to navigation
Jump to search
Line 28: | Line 28: | ||
==Some Examples:== | ==Some Examples:== | ||
− | IGNORE CH#2 | + | IGNORE CH#2 PC => Ignore Program Change events coming from channel 2 |
MAP CH#1 CC#7 => CC#1 => Map Volume Control events from channel 1 to Modulation Wheel events in the same channel | MAP CH#1 CC#7 => CC#1 => Map Volume Control events from channel 1 to Modulation Wheel events in the same channel |
Revision as of 18:07, 4 March 2020
The MIDI Filter Rule System is integrated in the webconf tool. You can create your rules by hand or using the “rule composition” dialog.
We have developed a simple MIDI Filter Rule Language that can be used for creating rule-sets. This "rule-sets" can do a lot of interesting tricks with your MIDI input flow. If you have a MIDI-OUT (like the new Zynthian Kits v2 have), you can also use your Zynthian Box as a powerful standalone MIDI filter.
Here is the MIDI Filter Rule Language syntax:
1 Rule Formats:
IGNORE [CH#??] EV[#??] MAP [CH#??] EV[#??] => [CH#??] EV[#??] CLEAN [CH#??] EV[#??]
2 Event types:
CC#?? => Continuous Controller Change (??=controller number) NON#??, NOFF#?? => Note-On, Note-Off (??=note number) PC#?? => Program Change (??=program number) KP => Key Press (after-touch) CP => Channel Press (after-touch) PB => Pitch Bending
3 Numeric expressions:
5 => a single number 5,6,7 => a list of numbers 5:7 => a range of numbers, including both limitters 1,2,3:5 => a mix of lists and ranges
4 Some Examples:
IGNORE CH#2 PC => Ignore Program Change events coming from channel 2
MAP CH#1 CC#7 => CC#1 => Map Volume Control events from channel 1 to Modulation Wheel events in the same channel
MAP CH#1 CC#0:127 => CH#2 CC#0:127 => Map all CC (Continuous Controller) events from channel 1 to channel 2
MAP CH#0 NON#0:45 => CH#1 NON#0:45 MAP CH#0 NOFF#0:45 => CH#1 NOFF#0:45 => "Split" your keyboard, sending the lower notes (until A-1) to channel 2