MIDI Effects Wrapper for VST/AU plugins using Max For Live

DISCLAIMER: This is an experiment I did for myself and I share this information if you want to try it on your own. Be aware I can’t offer support if something goes wrong on your side. I recommend to open a new Live set, and test this device or the ones you make in many different ways before using them in important projects. Third party plugins behave differently between developers, and depending if you choose VST, VST3 or AU formats, the settings will be saved or not after closing the project, or in my experience, they could even crash Live. It’s very important to fully test the devices.

I’m Nigel, developer of AudioSwift MIDI Trackpad and I want to show you how third party VST/AU MIDI effects could be used in Ableton Live, inside the same track where the instrument is. Normally you would require to put the VST/AU MIDI effect on a separate track and do the internal MIDI routing to play an instrument. But there’s a workaround using Max For Live devices as wrappers or containers for these plugins (at least on Live 12).

Here is a demo using Scaler for chord progression with single notes, feeding Modalics EON-Arp that generates a pattern, all in the same track with u-he Hive synth. For the MIDI controller I’m working with my MacBook keyboard to trigger single notes, and the trackpad with my app AudioSwift as XY pads for modulation.

Until Ableton finally allows third party VST/AU effects inside the same track, you can experiment with this Max For Live patch I made and use it as templates for your MIDI plugins. I’ll show you how to configure them. Basic knowledge of Max is required but we will not do extensive programming here; just a few clicks and change a couple of parameters to customize the container for your plugin. You’ll need to do it once for each MIDI effect plugin. The patch was made with Ableton Live 12.0.2 Suite and Max 8.6, and I tested it on Live 12. Unfortunately, the MIDI Effect wrapper doesn’t seem to work on Live 11.

Download MIDI Effect Wrapper

Configuration

Save the Scaler MIDI device where you usually save your Max For Live devices. Insert the device in a MIDI track. Click the icon to edit the patch in Max, unfreeze it and switch to Patching Mode. I’m going to use this as a template for creating an EON-Arp wrapper/container.

Scaler MIDI in Patch Mode

As you can see, the programming is very simple. The only UI object is a button to open the plugin in a floating window. There’s a vst~ box object where the plugin is loaded. The MIDI comes in and out of the plugin, and the audio signal is not used. In this case, it shows Scaler. If it also says Scaler at your side, it means it found the Scaler plugin in your computer, the device is ready to work and it doesn’t need more changes. If the vst~ box object is empty, it means it didn’t found the plugin and it needs to be loaded.

Since this will be a template for EON-Arp, in Max I click “Save as”  to save the patch with the name EON-Arp MIDI. In the patch, while pressing CMD, click the “plug” message box. It will open a file browser to change the plugin.

Click “plug” while pressing CMD.

Look for the plugin in your computer, in my case it’s EON-Arp. The path will be different if you’re on macOS or Windows. After doing some tests, I chose the VST3 version of EON-Arp because the VST and AU formats weren’t saving the changes I made inside the plugin after closing the project. This is why it’s important you test each version and choose the one that works without issues.

The plugin EON-Arp is now loaded in the patch. The next step is to change the text of the button to open the plugin because right now it says Scaler. Click the button object and go to the Inspector panel, scroll down to Text Off Label and type “Open” with the name of your plugin. I made this object Hidden in Parameter Visibility to avoid unnecessary changes in the Undo history when opening and closing the plugin.

Edit Text Off Label from “Open Scaler” to “Open your plugin”

Everything is set up. Change the patch to Presentation Mode, freeze it again and lock it. Save the patch in Max and close the window. The patch is ready to be used containing the new VST/AU plugin. Insert an instrument device after the MIDI Effect, click the open button and test it. Play your MIDI Controller.

Limitations & Issues Found

You’ll notice that after opening the plugin window from the wrapper/container, Live won’t react to some of its key shortcuts. For example, pressing the space bar won’t start the playhead. You’ll need to click twice anywhere in Live to use the space bar again, or use your MIDI controller button for play.

You’ll also notice the plugin window will disappear if you click Live, and you’ll need to open it again by clicking the button. Unfortunately, I couldn’t find a workaround for this. The open button can’t be MIDI mapped because as I mentioned before, its Parameter Visibility was hidden to avoid unnecessary Undo history changes.

In my experience with Scaler, I chose the AU format that says ScalerControl2. If you’re on macOS, this version doesn’t appear in the Live browser, but it can be selected when configuring the patch in Max. It’s used in Logic Pro as a MIDI effect and it’s a version of Scaler without the sound engine. With this AU version, I tested 10 Scaler wrappers instances in different tracks, each with a different virtual instrument, and an additional regular VST Scaler plugin in another track as the master. I linked the states of all instances with the master using Scaler link feature and it worked.

With the Scaler VST3 version, the settings weren’t saved after closing the project. With the VST format I couldn’t load more than 3 to 4 instances because Live crashed and I couldn’t even open the project again.

Also with Scaler, I found that after inserting the wrapper in a track, it messed up with the previous Undo history until that moment. You’ll only see multiple Undo changes for “Scaler MIDI” if you want to go to a past change. It will only detect the next Undo changes. This doesn’t happen with my other VST/AU plugins. I would recommend to insert the Scaler wrapper in the early stages of your project.

Wrapping up…

Let me remind you (again) to test everything. Test many instances of the wrappers in the same project, save the project, close it, open it again. Bounce the project. Do all notes play right?

I hope you find this information useful. If you’re on macOS check out my app AudioSwift. It transforms the trackpad into MIDI tools like sliders, XY pads, MPE and more. I made custom scripts for the mixer and for device macros to improve the workflow in Ableton Live. Try the AudioSwift free trial for 15 days.

Also, if you work with MPE controllers, check out my MPE Modifier device.

I want to thank Tom Glendinning, also known as ELPHNT. I recently watched one of his webinars showing how to create custom wrappers using Live UI objects. I got inspired into doing these MIDI effects wrappers for my VST/AU plugins.

 

Click to learn more

Update – May 1st, 2024 – TATAT VST3 Test

I did another test with the VST3 version of TATAT by K-Devices. TATAT is a generator of random MIDI notes and it worked great with Scaler in front changing the chord progression. Here is the demo:

I later tried to create a custom UI for the TATAT MIDI Wrapper, to be able to control the parameters inside the plugin using my trackpad MIDI controller. It looked like this:

TATAT MIDI with custom UI controls

However  this time ttest crashed the project after a couple of minutes of using it. The crash was so bad I couldn’t open the project again.