Im working this problem few months...
from mididings import *
config(
backend='jack-rt',
client_name='transpose',
)
config(in_ports=[
('keyb_first' ,'alsa_pcm:USB-Midi-Cable/midi_capture_1' ),
('zkey88' ,'alsa_pcm:UM-ONE/midi_capture_1')
])
config(out_ports=[
('KEYB_FIRST','LinuxSampler_first:KEYB_ORGANY','LS_PIANOFORTE:KEYB_FIRST','LS_percussion:KEYB_PERCUSSION'),
('ZKEY88' ,'LinuxSampler:ZKEY88','LS_Pianoforte:ZKEY88','LS_percussion:ZKEY88')
])
run(
Transpose(2) >>
[
Velocity(fixed=66) ,
LimitPolyphony(2,remove_oldest=False) >> Channel(7) ,
Filter(NOTE|CTRL) >> Channel(4) ,
Filter(NOTE|CTRL) >> LimitPolyphony(2,remove_oldest=False) >> Channel(5)
]
)
filter voice is still bad, unfortunately - because I used: - LimitPolyphony(2,remove_oldest=False) >> Channel(7)
Velocity(fixed=66) - pressure sensitivity off key, do not allow it to channel4: - Filter(NOTE|CTRL) >> Channel(4) ,
In config out ports - contains the names of which must be defined in the file lscp (There are ready-made connection and a big mess - treat this as an example, the names they come up with)
and of course the function transpose =+2
activators have yet to create and link them to the best of shortcut keys - example file (lubuntu):
#!/bin/bash
killall mididings
sleep 0.2
mididings -f /example catalog/transposer2.py
killall is needed to remove the previous connection
Please understand how it can publish it online LinuxSampler
for me it is a big problem - my english is bad....
by the way - are you planning to fix the function:
VoiceSplit([patch, ...] ???