Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 5 of 5

Thread: Will USB MIDI handle MPE ?

  1. #1

    Will USB MIDI handle MPE ?

    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

  2. #2
    Senior Member
    Join Date
    Aug 2013
    Location
    Gothenburg, Sweden
    Posts
    419
    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.

  3. #3
    Thanks! That makes my life considerably easier.

  4. #4
    Senior Member
    Join Date
    Nov 2012
    Location
    Boston, MA, USA
    Posts
    1,113
    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/...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-note...-spec-notes.md

  5. #5
    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.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •