by Ryan Webber
Ableton Live offers a powerful audio performance interface called sessions. You can utilize the power of Ableton sessions by sending MIDI commands from Isadora to Ableton Live. In the following example, I am using an Ableton Live demo set called 'APC40 Demo' which has seven tracks and five scenes setup in Ableton Live's sessions view.
Ableton Live 10 Studio is shown below, but the same method works with Ableton Live Lite, Ableton Live, and Ableton Live Studio.
Scenes can be selected and seamlessly switch between by clicking on the play button beside the name of each scene listed on the right side, under the Master track. These buttons can be mapped to MIDI messages received by Ableton from Isadora.
Setup Virtual MIDI Ports
One thing that needs to be done before you can send any MIDI between applications running on the same machine is to ensure you have a Virtual Midi Port available.
Isadora makes this very easy on Apple computers, but there are a few additional steps for Windows users.
Please review the article on Using Virtual MIDI Ports before continuing.
Setup Ableton Live to Receive MIDI
Once you open Ableton Live (or the Ableton Set you wish to control from Isadora) you will need to open the Preferences, found under the Options menu in Windows, and the Live menu on Mac. Once open you need to click on the 'Link / MIDI' tab.
By default, the new MIDI port will be setup for Track control. This means that for example, a tracks piano roll will receive any incoming midi message. This is not what we need to control the Live session playback.
- We need to change the input settings for the new virtual MIDI port to include 'Remote' and deactivate 'Track'.
Default settings. (new virtual port is highlighted in pink)Remote MIDI input activated for 'Isadora Virtual Port'. (new virtual port is highlighted in pink)
- Once the 'Remote' input is activated you can close the preferences dialog.
Send MIDI Change Control Messages From Isadora
The first thing to do in Isadora is to set the MIDI output port which needs to be used.
- Choose Midi Setup... from the Communications menu.
In the Midi Setup dialog set, the output port for 'Port 1' to the virtual port created
In the Midi Setup dialog set, the output port for 'Port 1' to the supplied virtual output port 'Isadora Virtual Out'.
- Next, we need to add a 'Send Control' actor to the scene editor in Isadora.
- The default settings of this actor will be what we will use for mapping to the play control of the Ableton Live session 'Scene 1'.
- When we click the 'trigger' input of the Send Control actor, Isadora will now send a MIDI Control Change message out of the new virtual port and Ableton will receive it.
Midi Mapping in Ableton
Now that Isadora is setup to send MIDI Control Change messages, Ableton needs to be told what each message will be connected to.
Midi mapping is done in just a few steps.
- Click the 'MIDI' button located toward the right edge of the top bar of Ableton.
This will change the look of Ableton, by adding a colored overlay over any elements that can be linked to incoming Midi messages, and will open a 'MIDI Mappings' panel on the left side.
- Next click on the element to be connected to the next midi message.
After clicking on the 'Scene 1' button, the button will be highlighted.
- In Isadora click the 'trigger' input of the Send Control actor. This will send out a MIDI Control Change message, that Ableton will receive and link to the selected button 'Scene 1' currently.
- The 'MIDI Mappings' panel in Ableton will now show the Note/Control received and the Path/name of the element if is now linked to. Also, the selected element in Ableton will display channel and note/control of the message that is now linked.
Create Mappings for All Scenes
- Add four more Send Control actors to Isadora, and adjust the 'controller' input of each so that controllers 2,3,4,5 are used.
- While MIDI mapping is active in Ableton, click on 'Scene 2', then set the 'controller' input of the Send Control actor to 2 and click the trigger input.
- Repeat back and forth until all Scenes 1 through 5 have midi mappings setup.
- Turn off MIDI mapping in Ableton.
One Last Thing
Ableton Live applies the midi mapping based on the value sent at the time of mapping, so now the 'value' input settings in Isadora need to be changed.
We sent the value of Zero for each control message. Ableton maps the value range across the mapped elements range.
We need to set the value of each Send Control message to 64 or higher (> 50%).
It's easiest to simply set the 'value' input of the Send Control actors to the maximum of 127.
Take Control in Isadora
An example of simple random Scene control.