← Back to all Apps


An open-source, unofficial Shazam client for Linux, written in Rust. Source



  • Recognize audio from an arbitrary audio file.

  • Recognize audio from the microphone.

  • Usage from both GUI and command line (for the file recognition part).

  • Provide an history of the recognized songs on the GUI, exportable to CSV.

  • Continuous song detection from the microphone, with the ability to choose your input device.

  • Ability to recognize songs from your speakers rather than your microphone (on compatible PulseAudio setups).

  • Generate a lure from a song that, when played, will fool Shazam into thinking that it is the concerned song.


Project links: Links to (pages with) screenshots: Screenshots


Mobile Fit: 5

Perfect - this app fits your phone screen just fine out of the box and works nicely with touch input!

Project status: maturing

This project has been in development for some time and is somewhere around a 1.0 release. It should work mostly fine.


Is this app packaged for my distribution?

green: current and packaged,
red: packaged, but not current, ratings and other details may not apply.

Packaging status

Powered by Repology

Get it on Flathub!

Install as flatpak: https://flathub.org/apps/com.github.marinm.songrec.flatpakref

If you're lucky*, you can install this app by just hitting this button:


* You need to have an appstream:// handler, e.g., GNOME Software or KDE Discover, installed and the app needs to be available in a configured software repository, more details.

Find similar apps

By Service: shazam

By Category: multimedia

By FreeDesktop-(Additional-)Category: Audio AudioVideo Utility

Licensing and technical details

License: GPL-3.0-or-later Metadata: CC0-1.0

Frameworks: GTK3

Programming languages: Rust

Build system: cargo

AppStream Metadata URL: https://raw.githubusercontent.com/marin-m/SongRec/master/packaging/rootfs/usr/share/metainfo/com.github.marinm.songrec.metainfo.xml