

Beat Detection Algorithms, Part 2 - snickmy
http://mziccard.me/2015/06/12/beats-detection-algorithms-2/

======
Animats
He's extracting BPM info, but not phase. You need phase info to sync two
tracks for mixing.

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.

------
mixmastamyk
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.

Nowadays, the info comes to me. Too bad I can't send these links back to my
younger self.

------
je42
Wonder how this algo compares to Scheirer's approach. (
[http://www.music.mcgill.ca/~hockman/coursework/MUMT_614/sche...](http://www.music.mcgill.ca/~hockman/coursework/MUMT_614/scheirer/614_scheirer_presentation.pdf)
)

------
programLyrique
And what if there is not a constant tempo?

If you know the score, you can more easily find beats and tempo (and do score
following). For instance:
[http://repmus.ircam.fr/antescofo](http://repmus.ircam.fr/antescofo)

~~~
BFay
You could probably split the song into frames, detect the BPM of each frame,
and plot the changes in BPM over time. This sort of thing would be pretty for
pre-rendering metadata about the tempo, which could be useful in DJ software,
or big music databases, stuff like that.

The IRCAM research you link to looks really interesting, and I think it would
be useful for other purposes, like real-time performance with automatic
accompaniment.

~~~
programLyrique
Yes, but you have always a duality problem between tempo and beat, i.e. are
they two eight notes at that tempo, or two quarter notes at twice quicker
tempo...

You can assume that the most prevalent duration is a quarter note, but it is
not always what would be on the score.

But it's more a problem related to transcription than to DJing (where the
representation of the beat as a whole note, a quarter note, or anything else
is eventually not important, I think).

