Learning a Cakewalk
Cakewalk: “something accomplished with ease”
Cakewalk: “a jazz composition by Canadian jazz pianist Oscar Peterson”.
Cakewalk: “a dance developed… …in the mid-19th century…”
Cakewalk: A Digital Audio Workstation software package from BandLab.
It is the last of those which I have been learning this past week. But before diving into that story, I’ll give a bit of background.
I once worked in a TV production studio. It was still all-analogue, from the Vidicon vacuum tubes in the cameras, to the control board, to the magnetic tape recorders, to the NTSC televisions. Audio editing was done with a tape block, a razor blade, and adhesive tape. Video editing was done with two U-Matic VCRs, a simple interface console, and a stop watch. That was the state of the art when I moved on.
Moving ahead a few decades, I now find myself in need of both video and audio editing. For video editing I have used the open-source OpenShot editor. Although of course fully digital, it has a very analogue feel.
Now I am working on a sculptural project for which I decided to add an audio component. It’s a representation of our Solar System, to scale. The audio track will be activated by a person’s touching a sensor. The sounds will represent the planets and principal moons. This will allow the visual aspect of the sculpture to be supplemented by an audio version of the same data. The sculpture is also intended to be appreciated by touch.
I have used an audio editor called Audacity for previous projects. It is great for audio, but this project involves MIDI - Musical Instrument Digital Interface. Audacity’s support for MIDI is elementary. And why do I need MIDI support? Because of someone called Matt Russo. His SYSTEM Sounds project has opened up a huge new world of possibilities not only for me, but for many people, sighted and not, around the world.
NASA has used quite a few of Matt’s Sonifications. Matt’s approach is to take data from NASA’s robotic space explorers and other sources, and turn those data into music. Fortunately, he also offers two training videos with supporting Python code. I watched both, and worked through the code examples. Then I created a spreadsheet of our solar system’s planets and moons with diameter and distance columns. Matt's code eventually produced this:
BandLab - Make Music Online
The cloud platform where musicians and fans create music, collaborate, and engage with each other across the globe
But to get here, I had a lot of learning to do. Matt’s code creates MIDI files. As I have learned, MIDI is just a series of numbers in a specific format. These numbers tell a compatible device what note to play, when, how long, and with what extra features such as vibrato and volume. A MIDI file is not an audio file, it is merely the instructions for how to create an audio file.
And therein lay my challenge. I needed a competent DAW (Digital Audio Workstation). Having abandoned the Apple ecosystem some time ago (some might say with prejudice), GarageBand (free) and Logic Pro (not free) weren’t options. Logic Pro is probably the most-used and common DAW out there. That’s what Matt Russo uses in his videos. He makes it look easy.
In the Windows software world, one product stood out, for several reasons. For me, not knowing how deeply I want to get into this, “free” was a big draw. The winner is Cakewalk by BandLab. Yes, that is its’ proper name, not just “Cakewalk”. It’s been around in one form or another since 1987. In 2018 the Cakewalk IP was purchased by BandLab, a company based in Singapore. They have since renamed themselves as Caldecott Music Group. They are a musical conglomerate who doesn’t charge for their software or digital music content. I presume they make their money through their other, more physical products. The co-founder is the son of an agribusiness billionaire, which may be a factor.
Cakewalk by BandLab is a very full and rich software application. Being based on such old code, it has idiosyncrasies and archaicisms. On the other hand, it can do just about anything in audio production. What it does for me is take the MIDI files produced by the Python code and allow me to turn those numbers into something resembling music.
The steps involved include: assigning a virtual instrument to each of the three tracks (planets, moons, background drone (based on a profile of an image of the Sun)), apply a volume profile to the drone, adjust the tonal range of the drone, and apply a stereo sweep (left to right) to the entire sequence. The last step, turning all that into an actual MP3 or WAV audio file, turned out to be the trickiest. The solution was to create a virtual playback device within the program and have the MIDI tracks “play” to that virtual device. That creates an analogue result which can be saved for listening through any standard player. So what you hear when you hit “Play” above is the result of all this complex process.
My first effort at sonification is by no means up to the standards Matt Russo has set. The process was certainly not “a cakewalk”, and the result is not nearly as frenetic as the music for a cakewalk dance. And Oscar Peterson would probably sigh and tell me I have some way to go in musical composition. But using Cakewalk by BandLab, I have achieved something I never planned or expected to do: create a piece of “music”.