Inspirations

My laptop crashed – how Camtronome was created – pt. 1

A photo demonstrating Camtronome application usage on stage

Portrait - Maciej Sznurowski

It’s the autumn of 2013, and I’m a full-time student of computer science at Wroclaw University of Technology, while also being a drummer in a young progressive metal band. The music we play – as it is in progressive metal – is quite complex, heavily inspired by the band Dream Theater, so changes of time signature and tempo can be heard in pretty every song we play.

To further complicate our band life – we started playing with audio backing tracks. Choirs, sound effects, or an orchestra played from synthesizers were an important part of our music. We certainly didn’t want to give them up during upcoming concerts.

Here I will present the idea of the audio track I used both in rehearsals and on stage. Variable, programmed divisions of the metronome I would drop into the left channel of the mixer, while in the right channel I would play the backing track, which landed finally on the “front” when playing live. Both the metronome and the backing track flew directly from the laptop, where a simple audio player and .wav files sufficed so far.

During rehearsals, such a simple and effective solution worked – we expected it to be the same when playing on stage.

Playing a concert

We’re going back to the beginning – it’s autumn 2013 and we’re just setting up on stage in one of Wrocław’s clubs. This is a competition concert, where the stakes are to support one of the stars at a big concert.

Microphoned drum set in a club

The vibe is great – we know we are well prepared. At the soundcheck everything matched up, the mood was good, everyone hears what they should in the audio monitors, familiar faces start to appear in front of the stage. What could go wrong?

We get on stage, adrenaline is buzzing, the laptop with backing tracks and metronome is ready to go. Let’s start!

We play the first song, fast and strong. The audience is having a good time – we started aggressively and keep going. The smiles don’t leave our faces, we can feel the power. The next song – a little calmer, but with a mixed time signature – 7/8 alternating with 8/8, transitioning into a 13/16 fill.
In the background, calm, monotonous choirs. Then the chorus in 4/4, but with a strong, bassy and thick accent. Everything is good, everything sounds great, until here suddenly…

Something went wrong

Without a warning.

Without an announcement.

Suddenly, the metronome, along with the audio backing track, jumped to the middle of the bar of another part of the song. I’m sure you’re familiar with situations in which your equipment fails when least expected and seems to take on a life of its own – this is what happened, so the entire band turned towards me with undisguised shock. The singer tried to improvise, herself also being knocked out of the rhythm, without a rehearsed plan on how to get out of such a situation. The audience’s smiles turned into sour faces when they realized that such a change was not planned. Time seemed to have stopped. With one hand, I managed to turn off the backing track and arrange some sort of a fill to get the song being played to the end. At this point I completely lost confidence in the equipment, which failed most when it was needed.
We finished the concert without a metronome and without an audio backing track.

Too much bass, though

The failure at the last concert did not give me peace of mind – I began to analyze what could have happened to the laptop. I have been playing with it at rehearsals for over a year and so far there have been no problems. Why did it ruin a nice performance for us?

Computer's hard disk drive

In 2013, SSDs (i.e., drives without moving parts, such as a platter or moving head) were new to the market, and laptops at the time mainly installed platter drives.

At rehearsals, in the rehearsal room, the laptop usually stood on some old cardboard (usually after the drums). In addition, surrounded on all sides by a wall or drums. At a concert, the computer stood on an aluminum table, a meter next to the bassist’s speaker. Suspicions fell on it.

The thick bass line in the second song caused vibrations that moved the head of the hard drive while playing the audio file. This caused the head’s arm to move, so the reading was also done in the wrong place. This can be compared to a jump in a track on a vinyl record – a damaged track or vibration can (annoyingly) move the needle forward.

There was a similar jump in the hard aluminum housing of the hard drive. It seems obvious now – but at the time, during the concert, the vibration managed to mess up our performance.

In order to confirm this, we put this laptop on the bass speaker at relatively high volume in the rehearsal room several times. Virtually every time, the laptop jumped to random places in the file being played, by one to two minutes both forward and backward. The louder the bass became, the more often the playback jumped to a random spot. The result of the home experiment determined the further fate of the laptop – it went into a well-deserved retirement.
I had to replace it with something.

Maybe a smartphone?

Iconography - Nokia Lumia smartphone

In 2013/2014, Nokia Lumia phones running Windows Phone were relatively popular in the European market. Studying computer science, it was Microsoft technologies that I took as my path, so naturally I became a Lumia owner at that time. It was my very first smartphone, the advantages of which I was only just discovering, and I was helped by a subject at the University related precisely to Windows Phone programming. After our unlucky performance, I was just after the first few lectures, which made me realize how many things could be programmed for these phones.

After making sure I wasn’t reinventing the wheel – I immediately started creating an application. The goal was simple – to create an audio player with programmable playlists. I couldn’t find a program in the Microsoft store that was suitable for this, so I had to write one myself. At the time, Windows Phone was a relatively young system, so there were really not many applications available for download (compared to Android, which was already on the market).

Within two months I was able to create a working application that began to replace the laptop in this regard.

The phone had a huge advantage over it – its memory has no moving parts, so an excessively loud bass was not a concern. Several tests with the bass speaker proved the effectiveness and reliability of the smartphone. Of course, I would add that it was doubly fun to use my own app.

Screenshot of Click Track Player application on Windows Phone system

For educational reasons, I also published it in the Windows Store under the name Click Track Player. This was a milestone in the development of the application, which is still seen today under the name Camtronome.

The player alone is not enough

Shortly thereafter, it turned out that the player alone was no longer enough for me. During rehearsals we improvised a lot – our record was over 45 minutes long. We would cut out interesting parts, write them down, and then mess with time signature and determine the final arrangement of the song. Not willing to limit improvisation in any way – we deliberately created without a metronome. However, over time, the precision of playing had to be put first.
Therefore, after a while we decided that every now and then we would improvise precisely with a metronome, which we began to miss in the backing track application I had created.

Screenshot of Subdivision Metronome application on Windows Phone system

So after a short time I programmed another function – a metronome. A simple 4/4, with the ability to add auxiliary sounds (eighths, triplets, sixteenths), with a sound I’ve got used to over the years, published as a separate application called Subdivision Metronome. Together with Click Track Player, it has become my second favorite tool used for rehearsals and regular practice.

The player and metronome alone are also not enough

Over the course of several months of using the Nokia Lumia, I discovered almost by accident that this device has a great microphone.
It was certainly much better than the one we had been using so far when recording improvisations from rehearsals. So I enriched Click Track Player with another option, which to this day is one of the flagship options of the current Camtronome – recording. Thanks to it, my Lumia has seamlessly replaced the recorder we used before.

After a short time there was an appetite to expand the program with even more features. Let’s say we want to improvise in 7/8, and then there would be a need to play three bars in 4/4 and finally just in 7/8? Visually it would look like this:

4/4 – 4/4 – 4/4 – 7/8 and so on.

A metronome changing over time had to be programmed.

Our band’s new songs deviated more and more from the standard form of verse, chorus, verse, chorus, solo, and chorus, so remembering the successive sections in a song was slowly becoming a challenge. It would be useful to have a way to mark while playing which part of the song we were in.

The solution turned out to be speech synthesis, which was already available on Windows Phone smartphones. I was planning to program it as well, but I had no peace of mind knowing the dubious future of this system, which was confirmed by the market situation. I realized then that programming for devices that would soon become obsolete was pointless.

End of Windows Phone

A photo of Lumia 735 phone with Click Track Player application launched

The turn of 2015/2016 was a time when the last units of Windows Phone phones were still available in electronics stores. Although, Click Track Player and Subdivision Metronome were still working very well on my Lumia, awareness of market developments was slowly forcing me to consider buying a phone with a slightly more certain future. It was apparent that Windows Phone could not stand up to competition in the form of Android and iOS.
Nothing is so demotivating as a really difficult work, which – for the above reasons – must go straight to the trash in some time.

On both Android and iOS, I couldn’t find any alternative to the apps I was writing, so I held off on buying a new phone for a while. Due to the inability to run Click Track Player and Subdivision Metronome on a non-Windows Phone, I knew I would have to write these apps completely from scratch once I changed it.
It was a huge amount of work, which I wanted to optimize as much as possible – and make the migration to the new formats painless if possible. At the time I also joined the BulletRaid band, so I needed both applications to practice my new songs. As a result, I had less and less time for programming.

As a software engineering graduate from Wroclaw University of Technology at the time, I have been following Microsoft’s moves to phase out Windows Phone. Everything pointed to the fact that a new development tool would soon appear that would make it possible to port an application programmed for Windows Phone to Android or iOS, partly using its existing code.

Android programming

Xamarin software development tool logoAs expected, in February 2016 such a tool was finally made publicly available to developers. Pretty much from day one, I started working on porting Click Track Player to Android. According to Microsoft’s declarations – I really managed to run a lot of existing code on the new Android phone without any problems. Click Track Player launched and worked properly, but required a lot of additional tweaks and improvements. By this point, I was a full-time employee, and my free time was filled with rehearsals with the new band and – from time to time – there was an enforced sleep break.

Autumn concerts with BulletRaid

BulletRaid band performance in Wroclaw

The cooperation with BulletRaid went quite well from the beginning and resulted in a large number of concerts for the fall of 2016. In this case, too, guided by technical masochism and a passion to stage fails, we used – of course – audio backing tracks.

Fall 2016 was intense regarding the number of club gigs we played with BulletRaid. Not willing to risk a fail on stage (especially in terms of audio backing), I still played the first shows with my Nokia Lumia. The nearly completed Click Track Player on my main Android phone was installed and ready to use, but I was holding off on trying it out live. So far, I had placed the phone on a tripod, next to the drums, with the recording function enabled. I recorded every one of my performances in this undemanding way. Such a metronome with Drum Cam function.

A photo demonstrating Camtronome application usage on stage

Being more confident by many successful rehearsals with my new Samsung Galaxy, I finally performed on stage equipped with Android. Nokia Lumia was finally dethroned after many gigs and landed deep in a desk drawer.

It’s there to this day.
I need to clean out that drawer sometime.
I know very well that you also have such a drawer in your room. Don’t judge me.
(You’d better rate the Camtronome app in the Play Store, you’ll help me develop it).
End of commercial :D.

What a freaking awesome app do you have?

Concerts in clubs often have musicians performing on stage. And after concerts, musicians often talk. And although rare, it also happens sober.

BulletRaid band performance in Lubsko

I heard the first enthusiastic review of my app (“What a freaking awesome app do you have?”) after a gig played together with several bands. To make a long story short, I was persuaded to publish my app in the Google Play store. It turned out that problems with jumping clicks on my laptop were not just my fate, and on top of that, I wasn’t the only one recording my performances. Talking over a bottle of sparkling water, I unveiled that the app I was using was of my own making. Thus I gained my first beta tester.

Polishing Click Track Player

After returning home, I started browsing the Google Play store in search of the best metronome app for musicians that can change over time and has recording, and speech synthesis functions. Spoiler alert – I didn’t find any.
At the time, apps were popping up like mushrooms – so interested parties had plenty to choose from.
To my surprise – despite many metronomes available – none met all these requirements. Even the most top-rated ones – were unsuitable for work on stage – they did not have a convenient function of playlists, variable time signature, or speech synthesis, not to mention recording.

And this is where the idea developed. So I decided to create a combination of Click Track Player and Subdivision Metronome for Android in one app and publish it officially in the Google Play store.

I started my work by implementing the previously planned improvements to the basics of the application. In the next step, I added a function for creating changes over time and programmable metronomes. Then, I added a wireless control function created for my convenience, and so I finally had a stable working base for today’s product.

Camtronome application logo

After almost a year of working after hours, I was ready to publish the application. However, the name Click Track Player had already become outdated. I have written a metronome that was a must-have for any musician and I needed a name that would highlight its main functions. The name Camtronome popped into my head during an autumn walk and has stayed with me to this day. It is well worth a walk.

This is what the beginnings of the Camtronome application looked like. For those who are curious how it all went on – you can read the second part of this story!

You may also like

Leave a reply

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

More in:Inspirations