Ableton Live as Musescore Sound Engine via MIDI Routing

Method to divert Musescore MIDI Out messages to Ableton Live such that Ableton Live is the sound engine for Musescore.

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

figure1

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

figure2

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.

figure3

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

figure4

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

figure5

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.

Do you still have an unanswered question? Please log in first to post your question.