MPE with Hardware Synths

Official support for: bitwig.com
KVRian
926 posts since 2 Apr, 2015

Post Fri Aug 24, 2018 6:50 am

Tj Shredder wrote:
ThomasHelzle wrote: You can use it like Ardour if you want. Use a generic script that is letting everything through and it just works in 2.4.
But what is the difference between “force MPE” and the standard setting. What does it do to the information contained in my Midi information. Why are there two different modes at all???
Whatever It adds to Midi when I edit a sequence, I don’t see any need to trash information, it could simply keep it...
With "Force MPE" or "Use MPE" BW takes the midi data and converts it to BW Expression data (Velocity, Timbre, Gain & pan), these can then be edited in the expression editor. For PB you get the advantage that the expression data maps nicely to actual pitch in the editor. If I move a note then the expression data moves with it, if I delete a note the expression data gets deleted.

With these off it just stores the midi as automation data. You can then edit it in the midi automation editor. I may be wrong but unlike other DAWs that allow you to edit by channel, deleting notes or moving them in BW will not affect the data such as PB or brightness as it doesn't link this data to the notes. Also deleting a clip in session mode will not delete any of this data it is left hanging around.

So as it stands for just recording and playing back multichannel data turning MPE off works perfectly. If you want to edit the data, or use session view to record over the location of a deleted clip it isn't much use.

With MPE on currently there is a problem with the channels being remapped, if this is not a problem for you then this mode works the best. You can easily edit the expression data and the notes that contain it, deleting stuff works fine as well.

User avatar
KVRAF
18748 posts since 3 Feb, 2005 from in the wilds

Post Fri Aug 24, 2018 7:15 am

ThomasHelzle wrote:
pdxindy wrote:Force MPE setting is working as expected for me... each new note (non overlapping notes) is on a different midi channel.

I'm on a Mac... perhaps there is a Windows bug?
Do you try it with a Midi monitor with and without "Force MPE" active?
It's not in the recorded notes, those are fine, it's in the Midi stream in/after a device set to "Use/Force MPE".

Cheers,

Tom
I don't have a midi monitor... however, I just tried recording some notes (not overlapping) on track 3 with Bazille in Force MPE mode. Each recorded note has its own midi channel.

I then put a Note Receiver on Track 1, followed by a Channel Filter device. As the notes play, the Channel Filter lights up the channel of the note. It seems that the note channels are unchanged from what was recorded.

Should this test show what you are talking about? It's not clear to me what you mean.

User avatar
KVRAF
5511 posts since 6 Jan, 2017 from Outer Space

Post Fri Aug 24, 2018 7:19 am

BobDog wrote:With these off it just stores the midi as automation data. You can then edit it in the midi automation editor. I may be wrong but unlike other DAWs that allow you to edit by channel, deleting notes or moving them in BW will not affect the data such as PB or brightness as it doesn't link this data to the notes. Also deleting a clip in session mode will not delete any of this data it is left hanging around.
But if that would be the case, MPE off should just do MPE as well, but that is not the case, PB doesn’t work at all, only on channel 1.
Also I don’t get why the expression data mapped to notes isn’t there as default, then I would not need to switch MPE on/off, there should be only one mode which works for all scenarios be it MPE or boring keyboards... In the end MPE has just more information than standard midi, as it maps controller data to a specific voice... It isn’t more than that...
Maybe the problem is related to the built-in synths. Some concept to make them more expressive than Midi ever could be... If that is the case, it has to be made compatible...

KVRian
926 posts since 2 Apr, 2015

Post Fri Aug 24, 2018 8:19 am

PB should work on all channels if you have MPE turned on, it is here for my Roli Seaboard and Linnstrument.

With MPE turned off I have to remove the relevant script and set up a generic controller (Toms one), then you have to restart BW as this stops midi working at all for the device. After restarting using the generic script it works for me on all channels, just make sure omni is selected.

P.S. I'm not standing up for the way this all works, but there are workarounds to get it going.

User avatar
KVRAF
5712 posts since 9 Dec, 2008 from Berlin

Post Fri Aug 24, 2018 9:38 am

Wow, now the discussion is getting back to total confusion.
There is so much half-knowledge and miss-understanding here, that I think I just go back to my book. ;-)

Have a nice weekend everybody!

Cheers,

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." - Rumi
ScreenDream|Thomas Helzle 8) Twitter

KVRian
926 posts since 2 Apr, 2015

Post Fri Aug 24, 2018 10:36 pm

ThomasHelzle wrote:Wow, now the discussion is getting back to total confusion.
There is so much half-knowledge and miss-understanding here, that I think I just go back to my book. ;-)

Have a nice weekend everybody!

Cheers,

Tom

Hi Tom,

Was I explaining something wrong then?

It would be good to know as I must admit I find the whole thing a little confusing.

Cheers

Andy

KVRian
926 posts since 2 Apr, 2015

Post Sat Aug 25, 2018 5:30 am

For anyone on OSX I have knocked up a VST that supports MPE midi passthrough.

With the existing midi plugins I noticed that you had to force MPE and then you could not set the PB range, this VST tells BitWig it supports MPE so you will get the proper MPE settings allowing you to set the range of the target.

There is one gotcha, if the plugin is defined as a pure midi plugin Bitwig ignores the MPE setting. To get around this the plugin has to be defined as a synth plugin and even though it tells bitwig that it supports midi out bitwig will not let you add a HW Instrument device after it in the chain.

So you need to add the HW Instrument device first, then add this plugin before the HW Instrument and everything works fine.

You can find it here: https://github.com/AndrewCapon/CADMidiPassthroughVST

User avatar
KVRAF
5511 posts since 6 Jan, 2017 from Outer Space

Post Sat Aug 25, 2018 6:58 am

Seems a tiny bit more complicated than setting “force MPE”. I bet Bitwig will fix the remaining issues anyway...
I have no problem setting the PB range of my MPE synths btw...

KVRian
926 posts since 2 Apr, 2015

Post Sat Aug 25, 2018 7:31 am

Tj Shredder wrote:Seems a tiny bit more complicated than setting “force MPE”. I bet Bitwig will fix the remaining issues anyway...
I have no problem setting the PB range of my MPE synths btw...
Sorry I don't understand, this is for hardware instruments. What are you talking about? You can use force MPE and set the PB range on the device?

So using the Linnstrument script with has a set PB range of 24, using a midi plugin with force MPE you can control a hardware synth that only has a PB range of 12? How do you do that?

User avatar
KVRAF
18748 posts since 3 Feb, 2005 from in the wilds

Post Sat Aug 25, 2018 7:37 am

BobDog wrote:For anyone on OSX I have knocked up a VST that supports MPE midi passthrough.

With the existing midi plugins I noticed that you had to force MPE and then you could not set the PB range, this VST tells BitWig it supports MPE so you will get the proper MPE settings allowing you to set the range of the target.

There is one gotcha, if the plugin is defined as a pure midi plugin Bitwig ignores the MPE setting. To get around this the plugin has to be defined as a synth plugin and even though it tells bitwig that it supports midi out bitwig will not let you add a HW Instrument device after it in the chain.

So you need to add the HW Instrument device first, then add this plugin before the HW Instrument and everything works fine.

You can find it here: https://github.com/AndrewCapon/CADMidiPassthroughVST
Thanks for your efforts!! :tu:

User avatar
KVRAF
5511 posts since 6 Jan, 2017 from Outer Space

Post Sat Aug 25, 2018 8:24 am

BobDog wrote:Sorry I don't understand, this is for hardware instruments. What are you talking about? You can use force MPE and set the PB range on the device
Sorry I was not aware of that, my last hardware synth was sold some decades ago...; - )
But I think the Bitwig devs are about to add the force MPE to the HW device anyway...

KVRian
926 posts since 2 Apr, 2015

Post Sat Aug 25, 2018 8:33 am

Ah Ok, I thought I had got something else wrong and had missed another setting somewhere!

When they fix it this VST will not be needed at all, fingers crossed they do but just incase they don't it fixes the problem.

User avatar
KVRAF
5712 posts since 9 Dec, 2008 from Berlin

Post Mon Aug 27, 2018 8:12 am

BobDog wrote:Hi Tom,
Was I explaining something wrong then?
It would be good to know as I must admit I find the whole thing a little confusing.

Cheers

Andy
Yes:

"Force/Use MPE" does not change what is stored! It is a "Post Effect" so to say. What it does is translating the internal note expressions back to normal Midi, not the other way around as you wrote above. This is also why our Midi Plugin trick works, since after that, it's just normal Midi again.

Bitwig records either MPE data or pure Midi based on what kind of script you use. If there is
noteInput.setUseExpressiveMidi(true, 0, 48);
in the script, the input will be interpreted as MPE and recorded accordingly as note expressions.
In that case, one should use the "Use/Force MPE" settings to translate things back, if the plugin does not announce it's capability itself.

Cheers,

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." - Rumi
ScreenDream|Thomas Helzle 8) Twitter

User avatar
KVRAF
5712 posts since 9 Dec, 2008 from Berlin

Post Mon Aug 27, 2018 8:15 am

Support wrote back that the changing of the Midi Channels in Beta 3 is a bug that should be fixed in Beta 4.
So hopefully then it will work as expected finally.

Cheers,

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." - Rumi
ScreenDream|Thomas Helzle 8) Twitter

User avatar
KVRAF
5712 posts since 9 Dec, 2008 from Berlin

Post Mon Aug 27, 2018 8:26 am

Tj Shredder wrote:But what is the difference between “force MPE” and the standard setting. What does it do to the information contained in my Midi information. Why are there two different modes at all???
Whatever It adds to Midi when I edit a sequence, I don’t see any need to trash information, it could simply keep it...
You have two options, as I explained above already:
If you want to work like in Ardour, you should NOT use a controller script like the LinnStrument or Roli scripts, but a generic Script that just is letting everything through. In that case, you also do not need to set the Use/Force MPE flag, since everything stays pure Midi.
Since such raw PitchBend data does not contain any information about what it means = how much to bend, you have to set up all links in the chain manually.

But if you want the convenience of the per note expression editing and PitchBend translation, you use the LinnStrument or Roli script which has the line:
noteInput.setUseExpressiveMidi(true, 0, 48);
in it. That tells Bitwig to translate the input to Note Expressions and you can edit for instance Pitch very conveniently as WYSIWYG instead of just Pitchbend on multiple channels, since the Pitch now knows about it's range.
THIS IS THE DIFFERENCE you are asking for.

Bitwig Synths can translate this on their own, but VSTs need the "Use/Force MPE" Flag set. This tells Bitwig to translate the Note Expressions back to normal Midi for the instrument to consume.

All the other "Why does it do this or that" is something that only the devs can answer and looks to me like a mixture of bugs and missing features (like in the case of the midi export that simply isn't complete yet). They started BWS with a limited subset of Midi for reasons unknown to me but at the same time already included Note Expressions. I'm sure over time this will become easier, but IMO the two "modes" make actual sense - and as far as I know, Ardour does not have note expressions?

I hope this helps,

Cheers,

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." - Rumi
ScreenDream|Thomas Helzle 8) Twitter

Return to “Bitwig”