Under The Microscope

A New Version of Airfoil Speakers for Linux

For several years now, we’ve provided an unsupported version of Airfoil Speakers for Linux users. Using Airfoil Speakers for Linux, you can send audio from Airfoil on your Mac or Windows machine to your Linux box. Unfortunately, the Linux app depended on multiple 3rd-party libraries, particularly for the GUI portions of the code. As such, it was quite difficult to keep it properly functioning with the many different flavors of Linux. While discussing how we could provide maximum compatibility, we realized that the most important feature of Airfoil Speakers was, of course, its ability to receive and play audio.

Focusing on that core function, we developed a simple, command line version of Airfoil Speakers, seen below. This new version runs on every Linux distro we’ve tested with so far1. Further, we’ve spent a fair amount of time stream-lining the Linux build system to allow us to quickly build and deploy updated packages in variety of formats2.

Airfoil Speakers for Linux in Action
Airfoil Speakers for Linux in Action

The first thing you’ll notice about the new Airfoil Speakers for Linux is that it runs right in the Terminal. Of course, this means that any customization is limited to formatting the text output, but since the main purpose of Airfoil Speakers is playing audio, that’s just fine. In order to provide as much flexibility within that medium as possible, we built the output system around a very simple XML specification. The output is generated in XML and then transformed using a user-definable XSLT stylesheet. The sample stylesheets we include show how you can format the data to consist of anything from multi-colored, human-readable text, to formats designed to be easily parsed by other processes.

Airfoil Speakers shows information on the currently connected audio source, including the name of the machine running Airfoil and the source application that is currently selected as Airfoil’s source. In addition, the CLI client provides notifications for volume changes and track metadata when supported by the selected source.

There are still some features missing from Airfoil Speakers for Linux that are available in other versions of Airfoil Speakers, things like Reverse Connect and album artwork. We’ll see what happens with that in the future. For now, our focus was on getting a client that would allow as many systems as possible to receive audio from Airfoil, and we’ve done just that.

Using Linux? Get Airfoil Speakers for Linux on our Speakers page!


Footnotes:

1. So far we’ve tested with the latest 32- and 64-bit versions of Ubuntu, Mint, Fedora, openSUSE and Debian. 

2. We’re providing packages in both RPM and deb formats, as that covers nearly every major Linux distro. In addition, we have a plain tarball available for distros that don’t use those package formats. 


Comments for this post have been closed. Thanks for reading!