Introduction
Bpm Live is a live
BPM counter for unix. It has been developed from
2000 until now udner the form of a hobby project, called BpmDj. BpmDj helps one in
analyzing songs for various parameters, one of them being the tempo.
The BpmDj analysis however requires the full availability of the songs
and the algorithm does not easily map onto a realtime analyzer. To this
end the algorithm has been modified in order to be useful realtime.
BpmLive is a
demonstration of this algorithm. It works for linux,
requires alsa sound drivers and will report both an immediate
measuremtn as well as a balanced stable measurement. The
algorithm will also print out *** at the same tempo as the current
stable measuremetn. This might allow the construction of midi
metronomes and other useful tools.
Download
Setup & User
Interface
The
BpmLive user interface provides the current input volume, the current
tempo and the stable/balanced tempo. The first time the player is
started it will generate a couple of optimal fourier mappings. This is
done using the fftw3 library. This process can take a loooong time (5
minutes on my computer). In other words: be
patient the first time you start the application !
Input signal
The program will take
input from alsa device hw:0 at a samplerate of 11025 Hz, 8 bit. If your
sound card does not support this you might need to change the source to
take input from plughw:0. Data is read from the line in device. BpmLife
does not provide you with a mixer. This means that you will first need
to select the correct capture device and tune the volume. This might
turn out to be somewhat more tricky than expected given the large
number of possible capture devices and switches offered by current day
soundcards. Furthermore your input signal should be plugged in into the
right entrance at the back of your computer. Normally the capture
parameters can be tuned when BpmLife is running. Good programs to tune
the soundcard parameters are the alsa mixer, kmix, rexima, aumix.
Please be aware that not all programs allow you to change all
parameters. In doubt use the alsamixergui.
Improvements
Linking up the
softawre to a midi device to produce clicks, beats and ticks or a clock
signal would be very useful. At the moment I don't have time to do
this.If you are interested in doing so, please visit the file
metronome.cpp.
Acknowledgements
Nancy Gerits for
drawing the background image.
Copyright &
Licensing
BpmLive and all its
components are copyrighted by Werner Van Belle. For
licensing/distribution/source modifications and any other thing you
might want to do with the program, please contact me.