This forum is read-only. Please post new topics in our Q&A forum.

Translate key regardless of velocity?

General discussion about MIDI Translator

Moderators: florian, DvlsAdvct

Post Reply
Bryan
User
Posts: 13
Joined: Sat Sep 08, 2007 6:53 pm

Translate key regardless of velocity?

Post by Bryan » Sat Sep 08, 2007 6:58 pm

Short of defining 127 translators, can I program a MIDI key to do the same thing regardless of velocity? For now, I'm using velocity 0--key up--but would prefer to have the macro occur on key down.

Bryan
User
Posts: 13
Joined: Sat Sep 08, 2007 6:53 pm

Post by Bryan » Sat Sep 08, 2007 7:42 pm

OK, by accident I discovered that a velocity of "oo" means any velocity, including, alas, velocity 0. I would like translation on key down, but not key up.

User avatar
florian
Bome Software: Founder
Posts: 2435
Joined: Thu Apr 28, 2005 10:09 pm
Location: Munich, Germany
Contact:

Post by florian » Mon Sep 10, 2007 2:23 pm

Hi Bryan,

yes, oo is a variable that receives the velocity. So in general, you want to do the translation only when oo is not 00. You can also use pp, qq, ... I tend to use pp as default variable because oo can be confused with 00 (zero zero). So in the following, I use pp.

there are 2 options:

1) use MT Pro:
it has the Rules feature where you would add a rule of the sort "IF pp = 00 THEN do not execute this translator action".
Example:

Code: Select all

TRANSLATOR 1: translate Note On
INCOMING: MIDI IN 90 40 pp
RULE: IF pp = 00 THEN "exit rules, do not execute this outgoing action"
OUTGOING: <what you need>
2) With MT Classic:
create an additional translator entry to swallow the MIDI event with velocity 00.
Some important points:
- this translator has the MIDI command with 00 (zero zero)
- this translator has NONE as outgoing action
- this translator must occur before the other translator in the list
- this translator must have "stop processing" checked, so that it will abandon this input event after processing this "swallowing" translator.

So, in short, this would work then:

Code: Select all

TRANSLATOR 1: swallow note off
Stop Processing: checked
INCOMING: MIDI IN 90 40 00
OUTGOING: none

TRANSLATOR 2: translate Note On
INCOMING: MIDI IN 90 40 pp
OUTGOING: <what you need>
Hope that helps!
Florian

Bryan
User
Posts: 13
Joined: Sat Sep 08, 2007 6:53 pm

Post by Bryan » Mon Sep 10, 2007 4:07 pm

Excellent, Florian--thanks so much.

frivo
New User
Posts: 1
Joined: Tue Sep 25, 2007 7:10 pm

Where do I put this code?

Post by frivo » Tue Sep 25, 2007 7:18 pm

I'm new with this MidiTranslator, but I think the program is very interesting!
This topic can maybe help me with a problem, but I don´t understand where I shall put the codes in the classic version? The bmtp-files does not seems like the code florian wrote in the example.

(I have ver 1.40, is this a wrong version? I didn´t found another Classic versions.)

User avatar
florian
Bome Software: Founder
Posts: 2435
Joined: Thu Apr 28, 2005 10:09 pm
Location: Munich, Germany
Contact:

Post by florian » Wed Sep 26, 2007 8:47 pm

the "codes" I present are just a shrunk way of describing the individual translator entries in MIDI Translator (yes, the Classic version 1.40 is the most recent one, but you cannot do rules with it. You need the Pro version for Rules).

So after starting Midi Translator, create a new Translator, then click on edit. The Edit Window will open, where you can separately enter Options, Incoming, and Outgoing. The Pro version will offer another tab for Rules. On each tab, put the info presented in the "Code".

Florian

Post Reply