Midi Note-offs

Official support for: mutools.com
RELATED
PRODUCTS

Post

Hi Jo
Is it possible to output (to external midi gear) a note-off that is actually a note-on with velocity zero? I ask because I am trying to hack an Akai Ableton controller for live use with MuLab and I need a note-on with velocity zero to turn the LED's off!!
Thanks
Paul

Post

Sorry for the late reply. Currently that's not possible, MIDI note offs are always sent out using hex 80 status bytes.

Post

Maybe this is for you, smithoid: https://code.google.com/archive/p/pizmidi/downloads
Get pizmidi20111013.zip and look our for midiConverter3
Should be possible to convert any midi-event into note-in/vel=0

Post

Thanks for the suggestion Nenneb but i think it won't work as it is just before sending out the MIDI data that note offs are converted to 0x80 type note off MIDI data.

Post

MuLab does convert note-on/vel=0 to note-off?

Post

Yes. MIDI status byte 0x80 = Note Off.

Post

That's actually meant as a convention for the receiver to implement, rather than the sender. It's for the situation when you're "actually" only sending note pitch and velocity, and you use velocity zero to mean you muted that pitch. Think of striking a tubular bell. The "note off" isn't really relevant - the bell will just ring out. If you do want to mute it, you'd have to say to the bell "you were hit with no velocity - sound like it!" - it's still a "note on" event in MIDI terms, and the instrument decides how to handle it. Note off is for instruments with "external" sustain, like wind instruments -- note on means you start blowing, note off means you stop blowing. The velocity of the note off could be used for something, too.

Post

pljones wrote: Mon Apr 29, 2019 4:42 pm That's actually meant as a convention for the receiver to implement, rather than the sender.
Just to avoid any confusion: You're talking about the Note On + Velocity 0, right?

So we both agree that it's rather the Akai that should properly handle the Note Off events (status byte 0x80), right?

Post

Yes, pljones, that's the way I understand MIDI to work. And I have no idea, why one would want to use note-on/vel-0 instead of note-off.
But on the other hand I'm not sure, if the host really should overrule a plugin's behavior.
Of course the host should handle it's own notes in a correct manner. But if the user decides to manipulate events in an unusual way, I think the host should accept that. (Although this is not my biggest sorrow atm ...)
Cheers!

Post

What I mean is that it's not for the sender to think "Oh, Note On with zero velocity? I should send Note Off." I mean that the sender should send "Note On with zero velocity" because it's up to the receiver to decide what to do. It might treat Note On with zero velocity differently to Note Off. That's perfectly acceptable. Rare but acceptable.

In general, I should be able to enter any defined MIDI event into an Event sequence and have the sequence transmitted as I entered it.

Post

I disagree that a Note On with vel 0 can have a different meaning than a Note Off. It is exactly the same. Please see the MIDI specs. I think the Akai device is at fault ignoring the Note Off messages. That makes the Akai device non MIDI compliant, imho.

Post

Note Off can contain a velocity that has meaning. Note On with zero velocity loses that. Clearly they are semantically different things and the MIDI spec doesn't prevent any implementation of it making use of those semantic differences. Note On with zero velocity is intended only as a "shortcut" to allow for running status - basically, if it works, it's okay but it's not the intended use. Note Off is required to be recognised (by those implementers who choose to also adopt the Note On zero velocity shortcut), of course, to terminate a note - so I'm not saying it's right not to implement Note Off - just that it's wrong to send a Note On zero velocity event as Note Off because it's not up to the sender to make that assumption. And to be completely clear, I'm not saying that a Note Off should be translated to Note On zero velocity, either.

Post

pljones wrote: Tue Apr 30, 2019 6:16 am Note Off can contain a velocity that has meaning. Note On with zero velocity loses that. Clearly they are semantically different things
Note On (0x90) + vel 0 = Note Off (0x80) with vel 0.
and the MIDI spec doesn't prevent any implementation of it making use of those semantic differences.
The MIDI specs clearly say that a Note On + vel 0 = a Note Off.
Note Off is required to be recognised (by those implementers who choose to also adopt the Note On zero velocity shortcut), of course, to terminate a note - so I'm not saying it's right not to implement Note Off - just that it's wrong to send a Note On zero velocity event as Note Off because it's not up to the sender to make that assumption.
I'm sorry but i disagree. The MIDI specs do not say what you say here, do they? The MIDI specs explicitly say that a Note On + vel 0 is equal to a Note Off.

And that was the right choice, because if the MIDI specs would have made a difference between Note On + vel 0 and Note Off then that would have added a serious amount of complexity without winning anything.

My conclusion is that this Akai device is non MIDI compliant by not supporting Note Off messages.

Post

Although I think, this topic is taking too much energy, I like to post a link:
https://www.midi.org/midi/forum/228-wri ... ty-note-on

The MIDI Specification says:
"A receiver must be capable of recognizing either method of turning off a note, and should treat them identically."

So I'm with pljones. But it's not important to me in any way ...

Post

nenneb wrote: Tue Apr 30, 2019 11:49 am The MIDI Specification says:
"A receiver must be capable of recognizing either method of turning off a note, and should treat them identically."
Exactly! That's what MuLab does. And that's what the Akai device does not.

Post Reply

Return to “MUTOOLS”