Singer at Concert

SongRec – open source Shazam client

Last Updated on August 11, 2021

Shazam is an app that identifies multimedia. The program stores a catalogue of audio fingerprints in a database. Shazam works by analyzing the captured sound and seeking a match based on an acoustic fingerprint in a database of millions of songs. It generates a spectrogram (a time/frequency 2D graph of the sound, with amplitude at intersections) of the sound, and maps out the frequency peaks from it (which should match key points of the harmonics of voice or of certain instruments).

Shazam can identify music, movies, advertising, and television shows, based on a short sample played either through the microphone of the device and also when you’re listening through your headphones.

SongRec is an open source Shazam client for Linux. The software is written in Rust.


On our Ubuntu systems, installation is easy.

First we need to add the program’s repository. using add-apt-repository, which is a script which adds an external APT repository to /etc/apt/sources.list.

$ sudo apt-add-repository ppa:marin-m/songrec -y -u

We can then install the developer’s package.

$ sudo apt install songrec -y

And run the program with the command:

$ songrec

There’s also a package in the Arch User Repository for Arch and Arch-based distros. And if you use a different distro, there’s a cross-distro Flatpak available, or you can install using Cargo.

Next page: Page 2 – In Operation

Pages in this article:
Page 1 – Introduction / Installation
Page 2 – In Operation
Page 3 – 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
Neil James
Neil James
3 years ago

Once Apple acquired Shazam I lost interest in the service.