Create an editable click track with audio cues using Sibelius and Max/MSP


Part 3. Creating the click track with Max/MSP

Exporting the MIDI file

Before exporting to MIDI format, to make sure that the cued click track notes are not exported twice, we once again triple-click the “Cues” stave, then filter for “Notes and Chords” and uncheck the “Play on pass” boxes in the Inspector. It is important to do this filter operation, as there will be no controller messages included in the export if the text objects of your cues are set not to play. Also, if you have relevant repeat structures in your score, make sure to switch off enough passes.

As we have no need for the MIDI data from the actual instruments, they have to be muted. Luckily, what would be an annoying and repetitive task if done by hand is accomplished in mere seconds with the help of the “Mute Unmute” plug-in by the awesome Bob Zawalich.

Now everything is ready for exporting via “File Tab” > “Export” > “MIDI”. Set the MIDI file type to zero, and check the box “Omit muted instruments”.

If you want to check whether everything worked correctly or not, just import the MIDI file into Sibelius. It then should look something like this (the grey text objects are the controller changes from the cue text objects; you may recognize the bars with tuplets as the tempo change count-in from an earlier example):

Audio files for clicks and audio cues

To turn our MIDI data into a click track we need audio files of the different elements of the track. These have to be prepared beforehand, just as you would when editing a click track by hand. Save your files in either WAV or AIF format to ensure compatibility with the Max/MSP patch.

The key to matching the right audio files to the right MIDI data is to name them correctly:

File names for audio cues have to start with a number between 0 and 127, followed by an underscore. After this first underscore you can use whatever you like as your file name, any additional underscore following later in the file name won’t confuse the patch. The number is the one that was assigned to the particular audio cue as a MIDI controller value earlier. So the files for my audio cue examples from part one would have to be named thus:

  • 06_THREE.wav
  • 07_TWO.wav
  • 08_ONE.wav
  • 09_AND.wav
  • 10_NOW.wav
  • 14_FLUTE.wav
  • 15_PICCOLO.wav
  • 16_OBOE.wav, and so on…

File names for clicks have to start with the note name, followed by # if sharpened, then followed by the octave number (-1 to 9), followed by an underscore. As you can see, the syntax for the note name exactly follows the way how MIDI notes were indicated in Sibelius’s drum mapping editor when we set up the click notation in the score. As an example, here again is how my click files were named:

  • C#2_Stick.wav
  • D2_Snare_Drum.wav
  • E5_High_Woodblock.wav
  • F5_Low_Woodblock.wav

What to consider when recording

Drummer Gavin Harrison gives some interesting general hints about how to choose the right sounds for clicks. I found the sounds that I had assigned within Sibelius to be entirely satisfying, so I just recorded and used those.

When recording audio cues, you should invest a few thoughts about the general approach. Given the fact that players will hear those soundbites again and again, they should be as most helpful and sound as least annoying as possible. For example, I tried to give a rising intonation and a certain calm to all preparatory announcements of instruments about to enter, while giving a falling intonation and a sense of urgency to all soundbites that indicated an imminent entry (like “NOW”).

One other important aspect to consider is the length of your audio cues. In general it is best to keep audio cues shorter than the duration of one click in the tempo of the fastest passage where those particular cues are used.

Especially if the need arises to combine several cues, it is advisable to keep them as short as possible. This way, you can stack them one after another without having them overlap on the track, like in the following example where three instruments enter at the same beat and therefore all need their preparatory announcement in the same bar:

After recording, and also if you already have some files of appropriate percussion sounds that you would want to use as clicks, you should load them into the audio editor of your choice and make sure that they are neatly trimmed at the beginning. For clicks, there should be no gap between the start of the file and the actual click, as the Max/MSP patch will start playback of a file exactly at the moment of a corresponding MIDI note, and having clicks starting at unduly different points into their respective audio files might result in a somewhat limping click track.

For the audio cues, though, I actually recommend to have a tiny bit of silence at the beginning of the file. This way, when an audio cue coincides with a click, it will be heard after and will not be obscured too much by the percussion sound. Of course this should be done somewhat consistently with all audio cue files and should not be overdone, as not to contradict the timing indicated in the printed parts.

For optimal results you should carefully normalize all your audio files. Make sure that they are well balanced in relation to each other and that, as a whole, they are as loud as possible.

The Max/MSP patch

The task of converting the MIDI file and the audio files into an actual click track will be accomplished by a little so-called patch for Max/MSP that I wrote and which you can download here. For those who are unfamiliar with it: Max/MSP is an amazingly versatile visual programming language, and it is normally used for things that are way more sophisticated than what we are doing here. If you do not own Max/MSP, don’t worry – there is a free runtime version available for Windows or for Mac OS X.

After installing the application and loading the patch you should see this:

Just drag all your files (audio files and the MIDI file) into the upper right rectangle and set the MIDI controller number by clicking into the small rectangle with the arrow and by then a) entering the number via keyboard and confirming by pressing Enter or b) dragging up or down before letting go of the mouse key to increase or decrease the number. The controller number is the one that stayed the same with all created Playback Dictionary entries, as opposed to the controller value, which is the number that was unique to a particular keyword and which is already taken care of by the name syntax of the audio files. It is important to enter the right number here, because else no audio cues will be created.

If you accidentally submitted files that have a correct name syntax but are not the ones you want to use, you can click the three upper left buttons to clear submitted files (either all audio cues, all clicks, or all audio files). If you want to change or correct your MIDI file, just submit the new file and it will overwrite the old one.

Press “Create Click track” to do exactly that. In case that some of your file names contained syntax errors, you will get according error messages and you will have the chance to resubmit files. The messages will only tell you if and sometimes what kind of a syntax error occurred. They will not tell you which files were wrongly named, you will have to check that for yourself.

You will also get a warning if you submitted only click files or only cue files. If that was your intention, just click “Continue”.

You will be prompted to specify where to save the new file. Following that the click track will be created in real-time. If you don’t want to listen in to spot any mistakes or problems right away, you can turn off the playback.

If your click track changes, just make the alterations directly in Sibelius, export a new MIDI file and reprocess it.


  1. PAOLO

    Very interesting and educating article! Thanks!

    Do you have an example of an actual click track finished, so that I could hear what the final product actually should be like? That would be very useful.


Leave a Comment

Your email address will not be published. Required fields are marked *