Siren – text-based audio player

It took me a few years to appreciate console-based software. Repairing a broken system using the ubiquitous vi text editor was a turning point in my Linux journey. Now, I spend a lot of time at the terminal, and listening to music. Best combine the two!

When it comes to console-based music software, I really admire musikcube, a wonderful cross-platform terminal-based audio engine, library, player and server written in C++.  This review will look at an alternative to musikcube. It’s called Siren. Written in C, it seeks inspiration from cmus, which I recently reviewed.


The developer provides a compressed tarball with the source code for Siren. While there’s no official packages for popular distributions, there’s unofficial packages for openSUSE and various BSD distros. There’s also a package in the Arch User Repository.

You can grab the source code from a Mercurial repository. Compiling the source code was plain sailing. If you get any problems with compiling, let us know.

I’ve recently published the first in a series of articles about using the Raspberry Pi 4 (“RPI4”) as a desktop replacement. Compiling Siren on the RPI4 worked without a hitch.

Upon start-up Siren reads the configuration file ~/.siren/config, if present. This file should contain a set of Siren commands. For example, you can add a path to your music library in this file.

Next page: Page 2 – In Operation

Pages in this article:
Page 1 – Introduction / Installation
Page 2 – In Operation
Page 3 – Other Features & Memory Usage
Page 4 – Summary

Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.