Recently I started to use the Shazam app on my iPhone. For those who don't know, this app identifies songs by listening to a small segment of the song playing. I was amazed by it's accuracy and speed so I decided to do a little digging.
I found a paper written by one of their developers here. In the paper the developer goes into a good amount of detail describing the fingerprintng algorithm used in Shazam.
As a pet project Id like to make my own song fingerprinting application so I can get some experience with audio programming.
What are some audio libraries that help you extract things like frequency, amplitude, and other characteristics of an audio clip or mp3 song over it's duration?
I'm using .NET but I'm open to other languages libraries. I'm also fine with both open source and paid libraries. As long as I can reliabably extract audio characteristics progmatically I'll be happy.
See also:
How Shazam Works
Shazam Journal Paper