Midi von E-drum Hihat in Sibelius via MT

MattDa

2014-11-21 12:44:33

Hi (Florian),

I'm trying to record directly from my Alesis DM Lite E-Drum into the Sibelius Notation Software. Everything works but the open and closed hihat sound are not separated, all hihat signals are sent as the same midi note 46 (=2E). At the same time the DM Lite sends a foot control message B9 04 XX, which is <40 for closed hihat, or >3F for open hihat. This foot control message is sent right before the note on message of the hihat 2E. Sibelius can't interprete these two messages right.
Now I need MT to translate these messages to:
send out midi note on (and off) 2D if midi note 2E is coming in and the controller B9 04 value is <40
or
send out midi note on (and off) 2E if midi note 2E is coming in and the controller B9 04 value is >3F

How do I do that?

Thanx, Matthias

MattDa

2014-11-21 18:33:09

Sorry, I think I mixed up decimal and hexadecimal values and more ;-)

I hope this is better:
I'm trying to record directly from my Alesis DM Lite E-Drum into the Sibelius Notation Software. Everything works but the open and closed hihat sound are not separated, all hihat signals are sent as the same midi note 46 (=2E). At the same time the DM Lite sends a foot control message B9 04 XX, which is xx<64 for closed hihat, or xx>63 for open hihat. This foot control message is sent right before the note on message of the hihat 2E. Sibelius can't interprete these two messages right.
Now I need MT to translate these messages to:
send out midi note on (and off) 2D if midi note 2E is coming in and the controller B9 04 value is <64
or
send out midi note on (and off) 2E if midi note 2E is coming in and the controller B9 04 value is >63

How do I do that?

Thanx, Matthias

florian

2014-11-21 23:46:29

Hi Mattda,

once you know how it's done, it's not so difficult! You do need the Pro edition, because we're going to use the rules.

The setup, as often, is to use MIDI Translator (MT) between your device (drumset) and the application (Sibelius):

In Sibelius, only use Bome Virtual Port 1 as MIDI Input. Do NOT select the drumset (otherwise you'll get both the original AND the modified hi-hat message).
In MT, go to project properties, and check the drums as MIDI Input, and Virtual Port 1 as MIDI Output. Make sure that their state is "open" (other wise double click, if you're on Mac).
Also, select the default routing so that all messages from the drums are forwarded to Sibelius: go to the Project Properties, the MIDI Router, and draw a line from drums to Virtual 1.

Now for modifying the hi-hat message, the principle is this:
  • use a global variable (say "g0") to store the last value of controller 04
  • for every MIDI note 2E, it is set to 2D or 2E, depending on the value of g0
Create a preset, then these 3 translators:

Code: Select all

[x] Translator 0.0: Remember last value of CC#4
Incoming: MIDI B9 04 g0
Outgoing: (none)

[x] Translator 0.1: Patch hi-hat for Note On
Options: swallow
Incoming: MIDI 99 2E qq
Rules:
  pp=0x2E
  if g0<64 then pp=0x2D
Outgoing: MIDI 99 pp qq

[x] Translator 0.2: Patch hi-hat for Note Off
Options: swallow
Incoming: MIDI 89 2E qq
Rules:
  pp=0x2E
  if g0<64 then pp=0x2D
Outgoing: MIDI 89 pp qq
There are 2 patch translator entries: one for Note On, and one similar one for Note Off.
The crucial part is to check "swallow MIDI message" in the Note On and the Note Off handler. Only if that's checked, the original message will not be passed on.
The Note translators use variable qq to store the velocity. In this case, it is just passed on to the outgoing message. For the note (the second number), the translators only react on note 0x2E, but set a variable pp to either 0x2E or 0x2D, depending on g0. Now in the outgoing message, we use pp as the note number.
Note that after entering the rules, MT will convert the hex codes to decimal. It won't change functionality. Prefixing a number with 0x will make it hexadecimal in rules.

Let us know if that works!
Thanks,
Florian

MattDa

2014-11-23 01:00:48

It worked!
Thanx Florian!
Now I'm working on adapting Sibelius to notate it right...

All the best,
Matthias