Click Tracker is a click track designer or programmable metronome, made for composers, instrumentalists and conductors working with modern music.
Software by João Pais
Click Tracker is a program designed for composers, conductors and instrumentalists working with modern music. The main goal of the software is to prepare a click track of a score, even when great complexity is involved. It can also be used as a programmable metronome.
This software runs in Windows, macOS and Linux, and can be used either by conductors in concert, by musicians for practice purposes, or by composers while composing.
To prepare a score, just input the values in a plain text file format (.txt) according to the syntax explained in the tutorial online, or sent with the program.
The Click Tracker App is now available – check the app website for it.
In order to make its development possible, a one-time donation is suggested. For professional musicians I would suggest 50 EUR, for students 25 EUR – of course, you can donate more or less than that. Keep in mind that if you use this program regularly, it will save much rehearsal and learning time. And also, for the program to reach this stage of development, many hours of work were invested into it.
Donations can be easily made through PAYPAL. Bank transfers to a german account are also possible (contact me for details).
An invoice can be written for donations.
These versions were launched with the financial support of the following ensembles or individuals:
Use this version in your computer if you don't want to install any extra software, such as Pure Data or Max/MSP.
You can download it for Windows or Apple.
If you download any of the patch versions, see the Advanced Features section below on how to integrate it into your patches. The patch runs at a sampling rate of 44100Hz.
The Click Tracker is used by instrumentalists, conductors and composers such as: Anna D'Errico, Carl Ludwig Hübsch, Carola Bauckholt, Haakon Stene, Matteo Cesari, Pavlos Antoniadis, Stefan Prins, Jack Quartet, and the ensembles asamisimasa, Nadar, Interface, loadbang and Schlagquartett Köln.
This is what some users have to say about the software:
The Click Tracker is an essential tool for the new generation of musicians. It allows the cautious interpreter to master the intricacy of time structures at ease.
As an interpreter of new music, I am sometimes faced with challenges that deal with extremely complex tempo relations. Some of the foremost composers of our time, like Brian Ferneyhough, Enno Poppe and others, have been incorporating this challenge as a powerful expressive means in their aesthetics. I have been using the Click Tracker in order to refine my performance in works that require this kind of virtuosity.
I would definitely recommend it: its friendly and simple interface allows a performer to set up by himself/herself immediate support tools for challenges that are nothing but "friendly and simple"!
Excellent tool for learning and performing regardless of score complexity. Very easy to learn itself!
With the Click Tracker João Pais offers a highly flexible and long-awaited tool for musicians who require a metronome that meets the multiple work specific demands of contemporary music: combining complex metrical structures, customized sub-divisions, tempo changes, as well as a wide range of other features, all easily and quickly programmed. The Click Tracker fills in the gap between standard mechanical metronome functions and a conductor's flexibility, and is useful in rehearsal as well as in performance.
Working with Click Tracker is like working on your fundamentals in sports. Your body needs to absorb it. Thanks for your program!
As the director of the vocal ensemble Ekmeles and artistic director of ensemble loadbang I am constantly leading rehearsals on new and difficult music. For scores with complex metric and tempo changes, Click Tracker allows for the kind of focused work on rhythm which would be impossible with a traditional metronome. Making click tracks is extraordinarily easy and intuitive, even for the most complicated scores.
The Click Tracker is extremely easy to use, in 30 minutes you can grasp the nuts and bolts and are able to make a click track! I have used it multiple times, both for rehearsals (the rehearsal mode, starting at whatever measure, and giving the option to change the tempo when necessary is super convenient) and for making click tracks for concerts.
Since I got to know João and this awesome program I haven't used anything else when dealing with click tracks!
A public library of Click Tracker files is being built – you can find it here. You can download any tracks that were submitted to it, or also find out how you can support the library yourself.
I'm searching for any support that would allow me to dedicate time to make this program more complete. This includes not just improvements in the existing possibilities, but also new techniques of input, control and performance, which will make it an even better learning, performance and composition tool. You can consult the list of current and planned features.
If you know any institution / ensemble / individual that could be interested in supporting the further development of this program – or in comissioning any specific features – please contact me. Or if you want me to program a specific feature with your ideas, ask me for a quote.
Every individual or group contributing to the development of this program will be mentioned in future versions (see "Former sponsors" above).
Click Tracker by João Pais is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Based on a work at puredata.info.
If you wish to use this software in any way not allowed by this license, or to do commercial work, please contact the author.
This tutorial shows how to prepare a score for the Click Tracker patch, including all its features.
The Click Tracker reads documents in text format (.txt). They must be saved as text-only – in case you use Word or any other office software you should pay attention to this.
I suggest using a programme such as Notepad++ for Windows or SimpleText for Apple to edit your track files. See below for other resources for these programs.
To reproduce a piece with the Click Tracker you must transcribe the score you want to hear to the format readable by this program – basically you must write down the metrical structure of the score.
The score below comes with the program, you can find it under examples/_score-tutorial.txt.
You start the score by writing a tempo with the command "t 60" (with space in between) for MM=60 – in case you forget to say which tempo you want the program will assume that the piece is at MM60.
A regular bar can be added with the command x/y – like a normal bar. For example with only a couple lines we can create a simple bar sequence. Bars 2-5 go from 4/4 to 1/4:
t 60 4/4 4/4 3/4 2/4 1/4
But you can use any ratio you want to: for the x/y format, it's only important that the numerator is a whole number (no decimal numbers allowed). On the other hand the denominator can be decimal if you want to. For example bars 6-7:
2/4 + 3/8 1/2 + 1/4 + 3/16 3+2/8 + 2+3/16 + 3/8
1 b 1 1 1
The same result is attained with both x/y syntax or with discrete events. These two 5/8 bars are written out differently, but sound the same:
5/8 .5 b .5 .5 .5 .5
If you need a bar with irregular divisions, you'll need to define different durations (similar to bar 8):
1.5 b 1
Also the y number always understands the 4th-note to be the standard duration. In case you're writing a score where another value is the base value for the tempo (for example 8th-note or minim) then you must do some math to get the proportions right. Always think of the beats as individual durations one after the other.
Notice that all decimal values must be written with a dot instead of a comma.
There is another way to notate factional values – through the fraction that calculates the value. You can use any values on both sides of the fraction. Here follow some values notated in both ways:
0.5 b 1:2 0.666 2:3 0.928 6.5:7
And now something completely different: a completely irregular bar with some irrational values.
1 b .2 1.65465439458675 5.14
You can input a repeated event by adding the command " x Y" to it. For example to type in several bars in one line, instead of several lines, each with one bar:
2/4 x 2 3+2/8 x 3
This also applies to single events:
1 b 1 x 9
The Y value must be a whole number starting from 1. It should only be used with events that generate beats.
With the letter "s" after an event, you can make a third type of metric subdivision sound, between the pitches of the first and other beats in the bar. Use it as you use the "b" letter; this must come always after the first event in a bar.
1 b 1 1 s 1 .5 b .5 .5 .5 s .5 .5 .5 s .5 .5 b .5 .5 s .5 .5 s .5 .5 s .5
You might notice that a beat with a subdivision have an extra "s" in the beat number GUI. Also, see below in the GUI Control and Command List sections how to use the "subdiv" command or the GUI to switch the playback of subdivisions on/off.
You can use the t command anywhere in the piece and how many times you want – just put it before the note you want it to apply for. For example here is a bar where the tempo changes on each note:
t 60 1 b t 120 1 t 30 1 t 90 1
If your time signature is irregular you can change the duration of each beat – including with decimal values. The next bar sounds just like the previous one but in the same tempo throughout:
t 60 1 b .5 2 .666
There are no limits to the decimal values you can use.
As mentioned above, a number indicates a tempo based on a quarter note. To use another duration as the base value for the tempo, input it after the tempo. This duration is expressed in the same way as the denominator in a time signature.
t 60 2 4/4 t 60 6 4/4 t 120 8
Notice that the tempo display indicator will be converted to the quarter note value in both main window and score display.
As you might have noticed by now this file is at the same time the tutorial for the program and also a score that can be performed. The parts with the numbers are the "music" and comments can be made in any place in the file if you put the "# " (a hash and a space) before each comment.
Very important about the comments: you can't use any commas or semicolons – it would be misinterpreted by the program!
I suggest to use comments to mark the bars / systems / pages in your track file. It will be helpful when editing it later.
Also you don't have to layout all you music lines one after the other. They can have empty lines between them – as well as comments in the same line:
Here is the beginning of the bar – the letter b is after the beat duration.
Here is an empty space. You can have as many as you want.
And some more beats
To change the tempo suddenly you already saw the t command. But to create gradual tempo changes – accelerandi and ritardandi – you can use the command "tc x y" where x is the new tempo and y the number of beats necessary to reach it. The beat duration of the tempo change MUST coincide with the sum of the beats it lasts: for example, if it lasts 1+1+0.75 beats, the result is 2.75.
The "vol x" command scales the loudness of the click so that it fits with the musical content. Values between 0 and 10 are accepted. The scaling is independent of the main output's volume level. If no value is given the score sets to 10.
Here is an accelerando with 1 bar duration and one bar in the new tempo. At the same time the volume goes slightly down.
tc 120 4 vol 7 4/4
and now we're in the new tempo. The volume goes lower.
vol 4 4/4
And now it slows down to slower as the initial tempo:
tc 50 4 4/4
and now is at MM50. The volume goes up on each beat until it gets back to the maximum.
vol 5 1 b vol 7 1 vol 8 1 vol 10 1
If some bars are too fast to hear, the voice saying the numbers can be muted with the command "voice 0", or unmuted with "voice 1". Here is a new irregular bar back at MM60 with both commands, which means the bar number won't be heard:
t 60 voice 0 1 b 1 voice 1 .5
Repetitions of the same bar can be used a lot in modern music. In case you want to repeat a fragment just use the command "rep x y" where x is the number of beats you want to repeat and y the number of times. Put this command just before the first beat of the passage to be repeated. Again – x MUST coincide with the actual sum of beats (you can't use 1 as a value for y). The number of the current repetition will be shown in the screen.
In case you use the "Go to bar" feature (more about that later) to start in the middle of a repetition sequence it won't work. For a repetition sequence to be correctly performed you must play the first note (since the command is before it).
1 b 1 .5
And now the same bar repeated 3 times:
rep 2.5 3 1 b 1 .5
You can also do the repetitions across the barlines. We stay in the same time signature but dislocate the repetition point:
1 b 1 rep 2.5 4 .5 1 b 1 .5
Cues (see below) can be added using the syntax "cue x" – where x is the cue number.
cue 1 1 b 1 .5
Place the cue before any beat you want to mark. See further details below.
1 b cue 2 1 .5
Fermatas can be added with the letter "f" after a single beat, separated by a space:
1 b f 1 1 f 1
If the fermata playback mode is on (check the Settings window), notes with fermatas will hold until the key "f" is pressed, and the main display will change from "Playing" to "Fermata". You can use the command "fermata x" to define in your score if fermata mode should be on or off.
In a performance you can't start the click track without warning – with the "pickup x" comand it is possible to repeat the first bar as many times as you need in order for the musicians to prepare themselves. The parameter x defines how many times the bar will be repeated.
You can either include this command in the score file (anywhere in the score but I suggest you to leave it on top) – or change it anytime in the patch itself. To have 1 pickup bar write "pickup 1".
As pickup bars aren't exactly repetitions and you must know exactly when the piece is going to start the bar numbers in pickup bars work downwards until they get to 1 – which is point where the score begins. In case you have 1 pickup bar you'll and your chosen output has voice included you'll hear bar "2 [beats] 1". If you have 2 pickup bars then "3 [beats] 2 [beats] 1".
With the comand "first x" you can define the number of the first bar to be played – in case your click track doesn't begin at bar 1.
With the command "direction up" or "direction down" you can define if the beats inside a bar are counted upwards or downwards. If no command is used the standard value is "up". This can be set anytime in the patch using the button "beat.dir".
Use the buttons under "Bar Filter" to define how many bars are spoken: all / every 5 bars / every 10 bars. This can be helpful in very dense tracks.
You can also define the setting in your score using the command "bar-filt x" and the number 0 / 1 / 2 for the settings mentioned above:
The output channels are set by default to 1 and 2. To change this setting use the command "audiooutput $1 $2 ..." in your score file. The parameters are the output channels from 1 to 32 – you can add as many as necessary.
Each version of the program has different ways to change the output settings:
audiooutput 1 3 6 12
Desktop Application – In the Settings window, press "Audio Settings" to open the Audio Status window. There you can set your output devices and channels.
Max Patch – Follow the same instructions as in the Desktop Application, or open the Audio Status window directly from the Max menu.
Pure Data Patch – In the Settings window, Output Channels you can use the matrix. Set your audio device in Pure Data's Audio Settings.
You can prepare your own audio cues to be added to the click track. These must follow the following conventions:
You can adjust the playback parameters click format and language anytime while working with the patch. But you can also adjust them in the score file. Then you don't need to always reset your patch when you load a new score (assuming each score has a different setting). To set a parameter you just write the command "par [parameters]" anywhere in the score. But like with the pickup command I advise you to put these general remarks in the beginning. Note: if you write down more than one command for the same parameter then the last command is the one to be valid.
The available parameters are:
click format – click / voice + click = cl clst
language – english / german / spanish /portuguese = english deutsch espanol portugues
For example to have a click track performed with clicks you write
To have a score performed with click and voice in portuguese you write
par clst portugues
The standard format is voice + click / english. Since there were some other commands before let's set it back to the standard preset.
par clst english
These commands can be used in your score files:t $1 – Tempo in MM – E.g. t 70
space – play/stop
p – play from last active bar
Esc – turn keyboard control on/off
g – select Go to Bar for input
shift+g – reset Go to Bar
u – select Pickup Bar for input
shift+u – reset Pickup Bar
t – select Tempo Scaler for input
shift+t – reset Tempo Scaler
l – select Loop to for input
shift+l – turn Loop to on/off
When clicking in the "Score" button you can see a time-scaled display of the events in the current file (this feature will not be available on mobile plattforms). These are arranged according to the following structure:
In the score information window you can retrieve information on concrete events.
When an event is clicked, the information is read in this window, and sets up the Go to Bar field.
Exported MIDI files are formated in this way:
There are certain limitations:
Here are the current list of programmed features and features to program. If any of these interest you, you can commission them – or any other suggestions you might have.
The Click Tracker can be used as a subpatch of another Pure Data or Max/MSP patches - it has one inlet for control messages and two outlets for sound and messages.
It is useful if you add the line "subpatch" to your score: this will turn off the keyboard control, and route the sound output out of the main dac to the left outlet.
Click on OSC to open the OSC settings window. There you can set:
See the files examples/tutorial-subpatch-osc.pd (for Pure data) and Click-Tracker.maxhelp (for Max/MSP) for examples on all the possible variables and their arguments.
For that, follow these steps:
For more informations/requests contact me.
© João Pais 04.03.2022