He's extracting BPM info, but not phase. You need phase info to sync two tracks for mixing.<p>There are some "automatic DJ" programs around, such as Virtual DJ and Softonic, but automatic mixing hasn't yet become a common feature in music players. It should be.
There was a time back in the late 90's when I wanted to write my own music/DJ apps, but I had no idea how to do things like graph audio or do bpm detection for example... or even where to look for such info.<p>Nowadays, the info comes to me. Too bad I can't send these links back to my younger self.
Wonder how this algo compares to Scheirer's approach.
( <a href="http://www.music.mcgill.ca/~hockman/coursework/MUMT_614/scheirer/614_scheirer_presentation.pdf" rel="nofollow">http://www.music.mcgill.ca/~hockman/coursework/MUMT_614/sche...</a> )
And what if there is not a constant tempo?<p>If you know the score, you can more easily find beats and tempo (and do score following).
For instance: <a href="http://repmus.ircam.fr/antescofo" rel="nofollow">http://repmus.ircam.fr/antescofo</a>