Ableton Live as Musescore Sound Engine via MIDI Routing
By: Norman Freund, 22-Apr-2021
Background
Musescore is a self contained scoring tool that has it’s own sound engine and associate instruments. Sometimes it may be desirable to create the score in Muescore but use the richer selection of instruments in Ableton Live and to be able to audition the composition as it is created in Musescore as it would be heard in Ableton Live, rather than the static method of exporting and importing midi files. A method to achieve this is described via a worked example. The method is described for the Mac (Apple) OSX operating system, it is expected similar (not tested) methods could be used on other operating systems.
Trade Marks
Ableton Live, trademark of Ableton AG, Schönhauser Allee 6-7, D-10119 Berlin, Deutschland
OSX, Apple Inc.
Apple, Apple Inc.
Brief
A method is described to use Musescore as the scoring engine (source of midi notes) and Ableton Live as the sound engine (recipient of Musescore midi) for the OSX (Mac / Apple) operating system. Here the midi messages are internal to the computer rather than physical cables. The midi messages are sent via the IAC Driver Bus.
Limitations
A maximum of 16 Musescore unique instruments can be played simultaneously due to the number of channels available for midi.
Method described and tested for OSX (macOS High Siera 10.13.6) (Apple) operating system.
Method described and tested for Musescore version 3.6.2
Method
1) Enable IAC Driver Bus in OSX Operating System
From the OSX operating system, enable an IAC Driver Bus:
Applications - Utilities - Audio Midi Setup
Window - Midi Studio - IAC Driver
Multiple buses can be enabled. Here “Bus 1” was used to send midi messages from Musescore to Ableton Live.
The “IAC Bus 2”, not described here, was used to send midi messages from Ableton Live to Musescore.
The name of the bus can be what ever you like.
2) Enable MIDI Out Within Musescore
Within Musescore
Preferences - I/O - PortAudio
API = Core Audio
Midi Output. = CoreMIDI,IAC Drive Bus 1
View - Mixer - MIDI
Select staff instrument then assign a unique midi channel number (i=1 to 16)
Volume = 0 (this is so the sound is heard from Ableton Live instead of the internal sound engine of Musescore)
Channel = i , i=1,2,3
Staff View
In this example there are three staffs. Since there are a maximum of 16 channels for any one bus and since Musescore can only have one midi out bus, the number of unique instruments that can be simultaneously played is sixteen.
Transport
Press the play button and if Ableton Live has been setup correctly (see step 3), it will play the midi notes from Musescore .
3) Ableton Live Enable Receipt of MIDI Messages From Musescore
Within Ableton Live
Live - Preferences - Link Midi
Midi:
Control surface = none
Input = IAC Driver (Bus 1)
Output = none
Control surface = none
Input = none
Output = IAC Driver (IAC Bus 2)
Midi Port = Input: IAC Driver (Bus 1)
Track = ON
Midi Port = Output: IAC Driver (IAC Bus 2)
Track = ON
This enables Ableton Live to monitor the midi messages from IAC Driver Bus 1 and to be able to send out midi messages to the IAC Driver Bus 2. Only the items pertinent to the Musescore to Ableton Live MIDI messaging are described.
In arrangement or session view, setup the tracks that are to be the sound engines for Musescore’s staffs (instruments):
Track 1:
Midi from = IAC Driver (Bus 1)
(Midi channel) = Ch. 1
Arm Recording = ON
Track 2:
Midi from = IAC Driver (Bus 1)
(Midi channel) = Ch. 2
Arm Recording = ON
Track 3:
Midi from = IAC Driver (Bus 1)
(Midi channel) = Ch. 3
Arm Recording = ON
Now when ever Musescore plays, it’s midi messages are received by Ableton Live and piped to the appropriate track via unique midi channel assignments along the IAC Driver Bus.
If Ableton Live is set into recording mode, the midi messages are not synchronised such that bar 1 note 1 is received by Ableton Live at say bar 1 note 1, instead Ableton Live is only used as the sound engine. Sometimes effects in Ableton Live are play-back speed (bpm) dependant, in this case it is recommended to use the same bpm in both Musescore and Ableton Live. Naturally once the score in Musescore has been completed, the usual process of exporting the various staffs to a midi file and importing this to Ableton Live would be done, rather than trying to synchronise live recordings from Musescore to Live. Midi clock synchronisation between Musescore and Ableton Live has not been explored by the author.