Set a MIDI Velocity Range on Input

Mochipet

2008-07-14 00:09:37

Hi,

I purchased your Midi Translator and I am trying to set the input to be a certain velocity range but it won't let me. Do you have any suggestions?

I want the different velocities on One MIDI Note to map to different Keyboard Key Strokes.

Input: 99 24 (velocity range 0-30)
Output: Keystroke "A"

Input: 99 24 (velocity range 30-60)
Output: Keystroke "B"

Any help is appreciated.

florian

2008-07-14 01:10:14

Hi David,

Midi Translator "Classic" can only do simple 1-to-1 mappings of
MIDI messages. So the only way you can achieve your problem at
hand is REALLY clumsy: create one translator entry for every
velocity value:

MIDI 99 24 00 -> Keystroke "A"
MIDI 99 24 01 -> Keystroke "A"
...
MIDI 99 24 2F -> Keystroke "A"
MIDI 99 24 30 -> Keystroke "B"
MIDI 99 24 31 -> Keystroke "B"
...

It doesn't really have much impact on performance, but it's a
pain to create the preset. Note that you can edit the .bmtp file
directly in a text editor...

With Midi Translator Pro you can use "if" rules to do what you want:

1)
Stop Processing=unchecked
INPUT MIDI 99 24 pp
Rule: IF pp >= 0x30 THEN exit rules,
do NOT execute outgoing action.
OUTPUT: Keystroke "A"

2)
Stop Processing=unchecked
INPUT MIDI 99 24 pp
Rules:
IF pp < 0x30 THEN exit rules,
do NOT execute outgoing action.
IF pp >= 0x60 THEN exit rules,
do NOT execute outgoing action.
OUTPUT: Keystroke "A"

and so on

Note that the rules will currently always convert hexadecimal
numbers to decimal (but you can enter hexadecimal by prefixing
with "0x" ). If you want the range 0-30 decimal, just remove the
0x prefix from the example above.

You can try this with the demo version of MT Pro.

Best regards,
Florian