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

How to send x/y midi cc before velocity

General discussion about MIDI Translator

Moderators: florian, DvlsAdvct

Post Reply
dirtyHeaven
New User
Posts: 1
Joined: Fri Dec 23, 2016 8:28 pm

How to send x/y midi cc before velocity

Post by dirtyHeaven » Fri Dec 23, 2016 8:39 pm

Been trying to figure out how to send cc data (like aftertouch or x/y position) before note on. I'm using a midi controller that sends velocity, x/y position, and pressure (aftertouch) per pad. My VST would like to to see the x/y position before it senses a note on message. Ultimately i'd like to translate the Y position from the pads into velocity. Any help with this challenge would be greatly appreciated.

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

Re: How to send x/y midi cc before velocity

Post by florian » Sun Jan 29, 2017 4:11 pm

Hi dirtyHeaven,
sorry for the VERY late response. We've been swamped...

If the pads always send in the order, it's quite simple with MT.
Let's assume that it first sends Note On with velocity, then CC position x, then CC position y, then pressure.
Now you want to ignore the note velocity, and defer the Note message until after the control change, using the y position.

Then create these translators (schematic):
  1. Incoming: Note On, set g0 to note number.
    Outgoing: none (swallow)
  2. Incoming: Note Off, any note.
    Outgoing: none (swallow)
  3. Incoming: CC position Y, set pp to value.
    Outgoing: CC position Y, value: pp (pass through)
  4. Incoming: CC position Y, set pp to value.
    Outgoing: Note On, note: g0, velocity: pp
  5. Incoming: CC position Y, any value.
    Outgoing: Note Off, note: g0, velocity: 0
The "swallow" checkbox must be checked for ALL incoming actions!

For passing the CC position X and the pressure messages, use the MIDI Router. We "manually" route the CC position Y so that we ensure that the CC is sent before the Note On. I also assume that the pads send instantaneous drum notes only, where Note On is immediately followed by Note Off and there cannot be overlapping notes. If that's not true, it's possible to enhance the preset, but it will need a little more logic.

If that doesn't work, please include a log of the Log Window in MT Pro -- having activated ALL checkboxes including timestamp.

Thanks,
Florian

Post Reply