"Roll your own" MPE?

Official support for: rogerlinndesign.com
RELATED
PRODUCTS

Post

I'm new to LinnStrument and pretty new to MPE. I mostly use synths on iPad within AUM as the AUv3 host, sometimes running midi input through the Mozaic midi scripting tool, which lets you alter midi in pretty much any way you want.

Reading through the manual's section "How to add MPE" ( https://www.rogerlinndesign.com/support ... to-add-mpe ) I don't really see anything that I can't do within AUM (possibly using Mozaic) to effectively enable MPE functionality in (just about?) any AUv3 synth on iOS.

For example, I've created an AUM session where I load four instances of Zeeon, a synth I like that doesn't do MPE. I have set up the four instances to receive on midi channels 2 - 5, respectively. And I've set each up to have its loudness controlled by CC 11, have filter cutoff controlled by CC 74, and have pitch bend of 24 semitones. Then I adjusted LinnStrument to use CC 11 for pressure, and to restrict midi note channels to 2 thru 5, and 24 semitone pitch bend. This seems to work as intended, creating a four voice synth where each voice has its expression independently controlled. (I haven't set anything up yet for common messages LinnStrument sends on CH 1, but forwarding those separately to each Zeeon instance should be trivial.)

I'm wondering whether anyone creates their own "MPE" synths like this. Once I set up forwarding of CH 1 messages, I can't tell how this is functionally any different from using a single instance of a four-voice MPE synth. Is it? It seems more straightforward and flexible than some MPE synths I've tried to use, albeit maybe a little harder to set up initially. But once I have it set up AUM will save/load the session without any need to redo any of the setup, so still quite easy.

EDIT: I just read the "What is MPE" manual section ( https://www.rogerlinndesign.com/support ... hat-is-mpe ) and it seems what I may have done is create a "multi-timbral" synth. Nevertheless, seems quite easy to do, and very flexible, so I'm still wondering whether this is something commonly done. And whether there are any major downsides compared to "real" MPE. One downside is that I now have four instances of a synth, so if I want to change settings it requires changes in four places. That seems not a big deal for most of my uses; I could even hook up a controller to change all instances from a single knob if I want.
Last edited by hesitz on Wed Mar 10, 2021 6:53 pm, edited 1 time in total.

Post

In most cases this should work, as it creates something called voice per channel. But for full MPE you would need also a common channel. For example a sustain pedal is sent on the common channel which is usually channel 1. You need somehow to pass that cc64 to all voices. That can make things complicated. But for normal expressive playing it works...

Post

Tj Shredder wrote: Wed Mar 10, 2021 9:22 am In most cases this should work, as it creates something called voice per channel. But for full MPE you would need also a common channel. For example a sustain pedal is sent on the common channel which is usually channel 1. You need somehow to pass that cc64 to all voices. That can make things complicated. But for normal expressive playing it works...
Thanks for the clarification. I don't see the common channel issue as being a problem. The manual section on "What is MPE" says that if you turn the main channel off then all the common channel messages are routed by LinnStrument separately to each channel. If that creates an issue with too much midi traffic for LinnStrument to handle, it's probably more efficient to split and forward the common channel messages on the computer running the soft synths. I know on iOS using AUM and Mozaic I would simply route LinnStrument channel 1 through a Mozaic instance running this little Mozaic script to forward all those common channel 1 messages to "voice" channels 2 thru 5:

============
@OnMidiInput
for i = 1 to 4 // corresponds to LinnStrument channels 2 thru 5
SendMidiThruOnCh i
endfor
@END
============

This forwarding could also be easily done using other utilities on iOS, like Streambyter (also available on Mac) or MidiFlow. This could also easily be extended to have two separate synth systems each doing voice-per-channel, with the two splits on LinnStrument using Main channels of 1 and 16.
Last edited by hesitz on Wed Mar 10, 2021 5:00 pm, edited 1 time in total.

Post

Using a multi-timbral synth as an MPE synth works pretty well, but has two disadvantages:
1) You must set all timbres to the same sound, and make any sound edits to all timbres redundantly, which is cumbersome.
2) Unlike MPE, multi-timbral synths don't have an MPE Master Channel (called Main Channel in LinnStrument) for messages common to all touches like sustain pedal (cc64), overall volume (cc7), Program Change, etc. LinnStrument has a workaround for this: disable the Main channel. Then all such common messages will be sent redundantly over all MPE Member (Per-Note) channels. To do this, in Per-Split Settings, set column 2 to "Main Chan" to display the assigned Main channel in columns 3-6. Then press the selected Main channel in columns 3-6 to turn it off.

Post

Roger_Linn wrote: Wed Mar 10, 2021 4:28 pm Using a multi-timbral synth as an MPE synth works pretty well, but has two disadvantages:
1) You must set all timbres to the same sound, and make any sound edits to all timbres redundantly, which is cumbersome.
2) Unlike MPE, multi-timbral synths don't have an MPE Master Channel (called Main Channel in LinnStrument) for messages common to all touches like sustain pedal (cc64), overall volume (cc7), Program Change, etc. LinnStrument has a workaround for this: disable the Main channel. Then all such common messages will be sent redundantly over all MPE Member (Per-Note) channels. To do this, in Per-Split Settings, set column 2 to "Main Chan" to display the assigned Main channel in columns 3-6. Then press the selected Main channel in columns 3-6 to turn it off.
Thanks, Roger. MPE is becoming less mysterious.

Regarding your point (2), if I think of my AUM/Mozaic/synth-instances setup on iOS as a single system, then I think it does in fact implement a Master Channel. With the way I have it set up now, it forwards the Channel 1 common messages to each voice channel, just as an MPE synth would. I assume MPE synths are doing precisely the same thing under the covers, it's just my solution is "bolted on" externally.

That leaves point (1): that when you edit a voice and want all voices to be the same then you need to somehow duplicate those edits in all the voice instances. I'll investigate this, but I think there's probably an easy way to do this, too. For example, say I have four synth instances, each of them loaded with a preset called "Preset 1". If I edit settings in one instance and save those changes back to Preset 1, then (I think) all I need to do is refresh each of the other instances with the revised Preset 1. I can tie a MIDI PC message to Preset 1, and then issue that MIDI PC message on Channel 1, which will then be automatically forwarded to each of the voice instances. I'll experiment a little to see if I can get something like this to work; duplication of edits in one instance to all the others would then be a single simple step.

Post

If it works for you, that's all that matters. :)

Post

hesitz wrote: Wed Mar 10, 2021 5:36 pmThat leaves point (1): that when you edit a voice and want all voices to be the same then you need to somehow duplicate those edits in all the voice instances.
When I want to create an MPE setup with multiple instances of the same (non-MPE) synth in Bitwig Instrument Selector Device, I can add one instance, select the sound I want, and add Macros (Remote Controls) to edit some common parameters (Filter Cutoff, Envelope Release, etc etc). Then when I duplicate the other instances, each Macro knob controls that parameter in all instances. It is a way to add some basic editing for that sound that doesn't need all the instances updated after each edit.

Not sure if something like that is possible in the software you are using.

Post Reply

Return to “Roger Linn Design”