Audio search and analyzer application (like a Shazam)
Switch branches/tags
Nothing to show
Clone or download
Latest commit 58cd405 Sep 21, 2018
Failed to load latest commit information.
db Update Sep 21, 2018
mp3 Update Sep 21, 2018
src Added audio analyzer and recorder script Sep 20, 2018
.gitignore Init project Sep 20, 2018
LICENSE Create LICENSE Sep 20, 2018 Update Sep 21, 2018 Added analyzer commands Sep 20, 2018 Set default seconds Sep 20, 2018 Added Reset script Sep 20, 2018

Shazam Demo

This project is about Shazam Demo. You are going to kearn how to analyze and index musics to database and search for musics in database.


First of all, you should have installed Python version 2.7 and pip.

pip install numpy termcolor pyaudio wave pydub

How to use

  1. Run file to clear and re-initialize your database
  1. Put your mp3 files into mp3 folder
  2. Run
  1. When you see indexed musics to database and run to listen music to discover. You will have to pass a second parameter for listening offset (by default it is 10 seconds)
python -s 5
  1. Done!

How is it work

I have written an article with "How Shazam's audio search algorithm works?" title. You may read it at here (Article is in Turkish. You may try Google, Yandex or Bing Translation.)


  • Python 2.7
  • numpy
  • termcolor
  • pyaudio
  • wave
  • pydub


  • If you want to contribute to codes, create pull request
  • If you find any bugs or error, create an issue


This project is licensed under the MIT Lıcense