Audio search and analyzer application (like a Shazam)
Switch branches/tags
Nothing to show
Clone or download
Latest commit 58cd405 Sep 21, 2018
Permalink
Failed to load latest commit information.
db Update Readme.md Sep 21, 2018
mp3 Update Readme.md 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
README.md Update README.md Sep 21, 2018
analyze.py Added analyzer commands Sep 20, 2018
listen.py Set default seconds Sep 20, 2018
reset.py Added Reset script Sep 20, 2018

README.md

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.

Installing

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 reset.py file to clear and re-initialize your database
python reset.py
  1. Put your mp3 files into mp3 folder
  2. Run analyze.py
python analyze.py
  1. When you see indexed musics to database and run listen.py to listen music to discover. You will have to pass a second parameter for listening offset (by default it is 10 seconds)
python listen.py -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.)

Dependencies

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

Contributing

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

License

This project is licensed under the MIT Lıcense