Ooook I don't want to be that guy, but if you take a signal processing course in a university, you'd see that algorithms that Shazam probably uses aren't blackmagic. In UC Berkeley one of the projects we did in our Linear Algebra class was doing something like Shazam; the input was a 5 seconds of a random song tuned down so much that human hear can barely hear and white noise added. Then the problem is matching this record with the song and specify start and end time (e.g. 2:30 to 2:35). Shazam is probably much more complex than this (I don't use it) but if college freshmen can do this...