Will USB MIDI handle MPE ?

jarkman

Member
Forgive me if this is a stupid question, but I'm just getting started with this.

I want to make a Teensy-based instrument which is controlled via MIDI MPE. I can't work out if USB MIDI will support MPE or not. Or, I suppose, I can't work out if MPE has new message types or if it's just a different usage of existing messages.

Any clues would be very welcome.

Thanks,
Richard
 
As far as I can understand MPE uses standard MIDI transport, but assigns a dedicated channel to every playing note. So USB MIDI should work, but user code has to adapt.
 
Bit of a late response, sorry, but a bit more detail: Yes, you can implement MPE on top of Teensy USB MIDI 1.0 just like you can implement the rest of MIDI 1.0 on top of Teensy USB MIDI.

MPE just adds extra meaning to a particular arrangement of channels - channel 1 is the master channel which affects all notes, and channels 2 to 16 are used to give up to 15 simultaneous polyphonic note expressions (pitch bend/glides, slides, pressure, attack and release velocity). (There is a bit more to it, like you can do a two-way keyboard split, but that is the basics)

You should read the full MIDI 1.0 and MPE specifications, which are freely available:
https://www.midi.org/specifications/midi1-specifications

For several years, the MPE specification was not available to the public except for an early draft, which Roli leaked. When the final MPE specification was released, I made a comparison with the early draft which everyone had been implementing up until then. If you happen to have been implementing from the early draft, that comparison might be helpful:
https://github.com/svgeesus/MPE-notes/blob/master/MPE-final-spec-notes.md
 
That is super-helpful, many thanks! I hadn't found the specs, I think I just didn't look hard enough.

Off to do some reading now.
 
Back
Top