BPM

BPM-TOOLS
Login

BPM-TOOLS

⇦ Back to README

BPM-TOOLS

Easy to install and use, but not a very accurate algorithm, the detected BPM is too low.

Included in Ubuntu as bpm-tools package.

git clone http://www.pogo.org.uk/~mark/bpm-tools.git

Detect:

sox feels.mp3 -t raw -r 48000 -e float -c 1 - | ./bpm

Result:

92.772 (Linux)
92.814 (MS Windows)

Detect:

sox pump-up-the-jam.mp3 -t raw -r 48000 -e float -c 1 - | ./bpm

Result:

114.608 (Linux)
114.544 (MS Windows)
114.673 (MS Windows, .wav file)

Plot:

sox feels.mp3 -t raw -r 48000 -e float -c 1 - | ./bpm -g feels.dat
gnuplot
gnuplot> plot "feels.dat"

sox pump-up-the-jam.mp3 -t raw -r 48000 -e float -c 1 - | ./bpm -g pump-up-the-jam.dat
gnuplot
gnuplot> plot "pump-up-the-jam.dat"

Empiric tests suggest using a multiplying factor of 1.09

Average detected values:

(92.772 + 92.814) / 2 = 92,793
(114.608 + 114.544 + 114.673) / 3 = 114,608333333

Expected values:

101
125

101 / 92,793 = 1,088444171
125 / 114,608333333 = 1,090671126

Average multiplying factor = (1,088444171 + 1,090671126) / 2 = 1,089557649