Findit is a Python program which can detect audio clips from a database of stored audio files.
Findit is a Python program which can detect the song being played by comparing it with a local database of songs. How Shazam Works is a brilliant article which discusses the approach from scratch. The code is a direct implementation of the above article (barring a few conceptual changes such as an overlapping window). The user can go through each and every step of the pipeline, visualise the intermediate results and get a feel for the complete approach which is used as the basic pipeline by major commercial applications such as Shazam!
Here is a spectogram of 3-second audio clip from 'A Sky Full of Stars' And here's a filtered version which only keeps the strongest frequencies On running it on a test of 200 clips, here are the results:
The program requires: