Robust Landmark-Based Audio Fingerprinting

A landmark-based Shazam-like audio fingerprinting system.
3.5K Downloads
Updated 5 Nov 2009

View License

This landmark-based audio fingerprinting system is able to match short, noisy snippets to a reference database in near-constant time.

This is my implementation of the music audio matching algorithm developed by Avery Wang for the Shazam service. Shazam can identify apparently any commercial music track from a short snippet recorded via your cell phone in a noisy bar. I don't have the database to check if my version is quite that good, but it is able to rapidly match and locate a poor-quality excerpt from within a database of (at least) hundreds of tracks.

See http://labrosa.ee.columbia.edu/~dpwe/resources/matlab/fingerprint/ for the "published" output of the demo script.

Notes for running under Windows (from Rob Macrae) are at http://labrosa.ee.columbia.edu/matlab/fingerprint/windows-notes.txt .

Cite As

Dan Ellis (2024). Robust Landmark-Based Audio Fingerprinting (https://www.mathworks.com/matlabcentral/fileexchange/23332-robust-landmark-based-audio-fingerprinting), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2009a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Audio Processing Algorithm Design in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.2.0.0

Fixed a problem where problems would occur if query contained audio before matching reference item (i.e. negative match time offset). Improved robustness (at cost of matching speed) by dithering time framing of query.

1.1.0.0

No change to code, but added link to notes for running on Windows.

1.0.0.0