Support for MPE "MIDI Polyphonic Expression"?

There are some really expressive and cool midi-instruments such as LinnStrument, Roli Seaboard etc. These allow playing instruments in a more expressive manner.
The LinnStrument would be a perfect fit for Renoise.

So my question/feature request is if Renoise supports MPE or could implement support for it.

"MPE stands for “MIDI Polyphonic Expression” and is a new MIDI standard created by us, ROLI, Apple, Moog, Haken Audio, Bitwig and others for communicating over MIDI between MPE controllers (like LinnStrument, Roli Seaboard, Continuum, SoundPlane or Eigenharp) and MPE sound generators (like these).

The principal reason for MPE is to get around a limitation of MIDI: Pitch Bend and Control Change messages must apply to all notes on the channel. This prevents polyphonic pitch bends and polyphonic Y-axis control (which uses Control Change messages) over a single MIDI channel. MPE solves this problem by sending each note’s messages on a separate MIDI channel, rotating through a defined block of channels. Here’s a brief summary of MPE:

Each note’s messages are sent over a unique MIDI channel, rotating through a defined contiguous block of channels called Per-Note channels. The per-note messages are limited to Note On, Note Off, Channel Pressure (for finger pressure), Pitch Bend (for X-axis movement) and CC74 (for Y-axis movement). All other messages (like Program Change, CC7/volume, CC64/Sustain, etc.) apply to all voices and are sent over a separate “Common” channel, either channel 1 or 16. If 1, the per-note channels are 2-16. If 16, the per-note channels are 1-15. Or a split MPE keyboard could, for example, send the left split over Common Channel 1 and per-note channels 2-8, and the right split over Common Channel 16 with per-note channels 9-15. You can choose how many per-note channels are allocated to each split.

Note that most MPE-compatible MPE synths do not implement a Common channel, instead applying all received messages other than the above five per-note messages, regardless of the channel on which they are received, as Common and therefore applying to all notes.

In LinnStrument, MPE is called “Channel Per Note” mode, and the Common channel is called the “Main” channel."

Info from:
http://www.rogerlinndesign.com/mpe.html

The Linnstrument keyboard:

Other similar midikeyboards:

https://www.hakenaudio.com/

2 Likes

Oh yes. I think this could be achieved with some kind of meta instrument, with is capable of shifting the instrument number for each new note. Then this meta instrument could also be capable of receiving notes from any selectable track, so it could be used to trigger two or more instruments at once, without using workarounds like an external virtual midi loopback device.

But then there still is the problem of recording the per-note modulation into the pattern / automation. Currently a single track does not support per-note modulation for midi devices. So this might lead into a quite drastic change of the pattern structure, which then seems to be a lot of work. But if VST3 was introduced, it looks like a logical step, since VST3 also has features like per-note-modulation.

Or each note could get an extra automation editor, in which the note automation will be added relatively to the track automation. Then maybe the pattern structure could stay untouched…?

In the end even the current pitchbend and aftertouch recording would have to be moved into graphical automation.

1 Like