Sibelius and MainStage for Music Scoring


(Score sample of Keyboard Two part from Conrad Askland’s “Romeo and Juliet – the musical”, July 2014)

As I’m working on orchestrations for my third full length musical, “Romeo and Juliet” (, I realize the need for a particular scoring approach for the Keyboard Two part. Here is the solution I came up with to incorporate Apple’s MainStage with Sibelius for use in orchestrations and creating the final Keyboard Two patch setup.

I have a 10 piece chamber ensemble. Keyboard One/Conductor will only play piano so the conductor can focus on the intricate entrances for the vocalists, changing meters and performing what some conductors refer to as “traffic cop” (i.e.: making sure everything doesn’t fall apart!)

So Keyboard Two is responsible for the musical colors and textures the chamber ensemble cannot provide, which in my classic styled score is Strings (arco, tremolo, pizzicato and maracato), glockenspiel, sparse timpani hits, harp, sparse recorder, lute to accompany guitar, etc. In other words, Keyboard Two is my jack of all trades.

I want the Keyboard Two part of be fool proof, where a player who knows the notes can just sit down and play. Because of the intricate orchestration I won’t have time in rehearsal to fix technical surprises or glitches. So, I want to set up the patch banks for Keyboard Two in Apple’s MainStage software and here the actual patches they will be playing while I am composing and orchestrating, but I also need to be able to output the full orchestration audio quickly to create audio files for practice tracks and subsequent revisions.

Here is the solution I’ve come up with for all of the that. Once setup, I think it’s fairly simple and doesn’t get in the way of my orchestration and composing process.

Now, I do adhere to the rule that while scoring in a notation program (like Sibelius or Finale), you should NOT waste time on perfecting the audio output. Otherwise, you will waste countless hours making your score audio output sound good, when your time is better spent focusing on making the live playing of your score sound good. I spend a lot of money on sound libraries. I have a dozen libraries from East West, most of the Garritan libraries, Native Instruments and many others with legal licenses. I find that when I’m scoring for live instruments, the Garritan libraries work great, have an easy computer load and let me focus on scoring.

The exception is Keyboard Two. I want to hear exactly what Keyboard Two will be playing. If I program my Keyboard Two parts with expensive libraries from East West or Native Instruments, the reality is that when a keyboard two player sets up their patches in an amateur or even semi-pro environment, they are not going to have those libraries. So, I want to program all the Keyboard Two parts in MainStage so that any keyboard player can setup similar patches to what I am scoring for (MainStage 3 is around thirty dollars).


To get Sibelius to play through MainStage, setup your IAC. (Mac: Applications > Utilities  > Audio Midi Setup). I named my IAC “Sibelius to MainStage” which is pretty fool-proof. In Sibelius > Play > Playback Devices, add your new IAC to your set. For those unfamiliar with IAC, think of it as an external midi cable that is virtual within your computer. MainStage acts as an external tone module and the IAC is a midi cable to that module. You can use the same approach for any virtual instrument such as Kontakt, or players like PLAY, ARIA, etc.


Now your Keyboard Two part is playing through Sibelius, but you need to make automated program changes. For my setup, I am keeping my Keyboard Two part limited to a maximum of 16 patches (many programmed with splits within those patches on a full 88 key keyboard). In Sibelius, as an example to change to patch four, use this: ~p4

Make the “~p4” text hidden, it’s only needed for the software patch change automation. Then in visible text use a boxed text for you keyboard player, like “4 Tremolo Strings”. Now the software will change to the correct patch, and hopefully your keyboard two player does the same with your visible, manual patch change instruction for live play.

Now, the problem with all of this is when you want to output audio quickly from Sibelius. Sibelius will only do a quick virtual output of your virtual instruments, it will NOT include the MainStage sounds. One option is to output all audio to a third party software and record the input real-time, but this is time consuming and I don’t want to mess around with that. When I am in rehearsals and doing countless updates for the cast and musicians I need to work quickly and output audio on the fly.


The solution I came up with is to simply also include the Sibelius patch change commands for internal virtual use, in addition to the patch changes for MainStage. In other words, I include patch changes for Garritan internal virtual instruments like I normally would as if I was not using MainStage. Then, make that text invisible. The text I keep VISIBLE is text that would be useful to the Keyboard Two player like string performance styles (tremolo, marcato, arco) and when part of a split patch is playing (Glockenspiel, Timpani, Hand Drum, etc.)

I hope the graphic at the top of the page can show you that although the setup may seem a little tedious, once it is in place I don’t find it much of a distraction while I am working on orchestrations. And in the end, that is most important.

And with this setup I get a Keyboard Two part where I can hear exactly how their patches will work with the score, and I can also output audio quickly with a reasonable duplication of the orchestration for musicians and cast to rehearse with.

If you have other ideas or solutions about using MainStage with notation software, please leave a comment and let me know about it.

Leave a Reply

Your email address will not be published.