spectrum is a terminal-based music player

In Operation

Here’s an image of spectrum in action. The screen is divided into 4 panes. The top left is a file browser and lets you listen to albums. Below the files section is useful information about the currently playing track.

spectrum in action

The bulk of the window is taken up by a choice of visualizer, equalizer, and lyrics. The bottom right pane hosts basic playback controls (skip to previous song, play/pause, stop, and skip to next song).

In my eyes, a visualizer just serves as a big distraction adding nothing to the music experience. The less said about this frippery the better!

The equalizer has a custom option, or you can choose from presets designed for electronic, pop, or rock music. I personally venomously despise graphic equalizers even more than visualizers. It’s something I’ll never use. At least the visualizer and equalizer can be hidden by choosing the lyric option.

Retrieving lyrics seems a very hit-and-miss affair though, the vast majority of the time failing to fetch the lyrics. But seeing the message “Failed to fetch =(” is infinitely preferable to the hideous visualizer.

You’ll want to learn the keyboard shortcuts. Pressing F1 shows them.

spectrum's keyboard shortcuts


If you’re looking for a terminal-based equivalent of Goggles Music Manager, spectrum might be a good solution. If your music collection is organized by folders and missing metadata, this type of directory-based music player is desirable.

I’m pleased that spectrum offers gapless playback. That’s a big plus. The term gapless playback sometimes causes confusion. Gapless playback means tracks flow into the next song without pause. This allows seamless transitions from track to track. This is so important for albums that were designed to have the tracks run together. It’s not just classical music that so often mandates gapless playback. Listening to electronic music, concept albums, and progressive rock is often ruined when artificial gaps are inserted between tracks.

spectrum definitely needs refinement before it warrants a strong recommendation. I definitely don’t like the design. The files pane is too narrow for my liking and doesn’t expand even if you resize the terminal window. The player buttons aren’t aligned well on the terminal emulators I use. spectrum has some strange idiosyncrasies such as when the current track finishes, the panes sometimes resize slightly.

ps_mem reports that spectrum uses around 37MB of RAM. That’s very frugal. But the player uses significantly more CPU cycles than other terminal-based music players.

Developer: Vinicius Moura Longaray
License: MIT License

spectrum is written in C++. Learn C++ with our recommended free books and free tutorials.

Pages in this article:
Page 1 – Introduction and Installation
Page 2 – In Operation and Summary

Notify of

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

1 Comment
Newest Most Voted
Inline Feedbacks
View all comments
9 months ago

Sound quite complicated compared to a GUI player.