Running Ardour on a Raspberry Pi 4

Q: Is a Raspberry Pi 4 (4Gb) powerful enough to run Ardour?

A: Yes

I set out to discover how it would cope with the modest requirements of this excellent digital audio workstation.

A word of caution: running the Raspberry PI 4 with the official case is not recommended. Even with trivial non-audio operations the whole thing gets so hot that it quickly throttles down to a grind.

For that reason, I ordered an acrylic case with heatsinks and fan which turned out to be the perfect environment for the PI. Not only it keeps everything cool but looks so too!

I installed Raspbian Buster and downloaded the latest ardour sources. If you use are going to use this software please make sure you make a contribution – there’s a lot of work in there that should be supported!

The list of dependencies to install includes:

libaubio-dev libboost-dev libcppunit-dev libcurl4-openssl-dev libfftw3-dev libglib2.0-dev libglibmm-2.4-dev libgtkmm-2.4-dev python-isodate libjpeg-9 libarchive-dev libart-2.0-2 liblo-dev libsamplerate0-dev libsndfile1-dev libusb-1.0-0-dev libxml++2.6-dev liblilv-dev liblrdf0-dev lv2-dev libpangomm-1.4-dev libreadline-dev librubberband-dev libserd-dev libsord-dev libsratom-dev libsuil-dev libtag1-dev vamp-plugin-sdk libasound2-dev libudev-dev libjack-dev

The Raspberry is currently installed on my Rehearsal/Live rack and is connected to a Behringer u-phoria umc 1820 audio/midi interface (8/10 In/Outs, 18/20 In/Outs with ADAT).

Jack is configured to run at 96KHz. The 21.3 millisecond measured latency is sub-optimal but as I normally monitor directly, it does not matter to me.

In my tests I was able to consistently record 8 tracks without a single xrun, although I was not using any plugins. Ardour was running remotely using X11 display forwarding:

In retrospective, I doubt I have a valid use case for running ardour in this setup. In the studio, I will continue to use my desktop computer to run ardour, whether trough my old dependable M-Audio Delta 1010LT PCI card, or with a new setup based on a Soundcraft Ui24R mixer.

For live recording, having to carry a laptop (or alternatively a monitor + keyboard + mouse combination), defeats the purpose of having it all inside a tiny device, specially if you need to record multiple inputs simultaneously, which anyway requires a sizeable audio interface. In this case a simpler recording solution using ecasound would be more manageable, not least because you could control it from a tablet running Termux. Again, in my case I would probably use the Soundcraft Ui24R to multitrack-record every channel and later transfer everything to the studio computer for processing.

Disclaimer: I am not in way associated with the products linked or referred to in this article.

Helping to clean up the mess

Photos from this weekend expeditions helping to clean up the mess we all have been leaving behind.

Monsanto, Lisbon. Pretty clean surroundings but still some plastic lying around.

The following day, picking up garbage accumulated along a small creek feeding Tejo river.

Police was called to investigate a bag with what seemed to be animal remains discovered during the cleanup.

Midi-triggered blender drummer model

My most recent challenge: using midi signals to drive a 3d model of a drummer and drumkit.

For music production I use ardour and hydrogen, synchronized by the jack audio connection server. For this project I set up an audio project for the classic Cheap Trick “Surrender” song and painstakingly created the drum midi track on hydrogen. I had to set more than 20 tempo changes just to keep it reasonably in-sync with the original performance!

The result was a stream of midi signals that were captured to a text file using the very useful kmidimon tool:

The drummer model was sketched using Makehuman, and the resulting model and armature loaded in a blender model of a vintage drumkit.

The script is a bunch of python code that loads the file with the midi events and then inserts the keyframes for the poses at the right frames on the animation.

The first result shows an awkwardly performing drummer hitting the drums on the right moments. The next steps involve working on more natural poses and dealing with alternate use of both hands for quick sequences. A draft animation of the first seconds into the song can be seen here: