Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

For some activities such as running it is important to know how many BPM a song has. I know that Banshee can do this but I couldn't figure out how to do this for a selected range of songs.

Which tool can I use to detect the BPM and immediately tag this in the ID3 fiels of the corresponding files?

share|improve this question
Are you still looking for an answer to this? – James Mar 5 '12 at 18:40
Yes, there has not been a decent answer yet – Ingo Mar 5 '12 at 19:57

There is a thread (Any beat detection software for Linux?) on SuperUser dealing with the same problem.

It uses a combination of commands (bpmcount, mid3v2, vorbiscomment, metaflac) compiled into a neat shell script.

share|improve this answer

bpm-tools are command-line tools for detecting and tagging BPM.

Here's the man page of the package in Ubuntu 14.04 LTS.

You could use a loop or xargs in a shell script to run this on a library of songs.

share|improve this answer
Can you give an explanation on how to use this software? – hexafraction Oct 22 '12 at 23:06
Copy the files into your $PATH and run bpm-tag file.mp3 – mmx Oct 23 '12 at 22:58
bpm-tools is now available via apt-get, and you'll also need libsox-fmt-mp3 for mp3s. However, I tried using it with one mp3, and it erased/corrupted the existing tags. So, proceed with caution (I just use the -n option to print it to screen only). – laher Oct 12 '14 at 8:51

Mixxx has a built-in analyser that will let you select a bunch of songs from your library to analyse their BPM.

I recommend using the latest version of Mixxx (1.11 at the time of writing) to make sure you get the most reliable analysis (it has been enhanced recently). You can use their PPA to always have the latest stable version.

However, as mentioned by naught101 in the comments, the value is not yet saved in the file's tags as the development team needs to fix a memory corruption problem before it is enabled. Therefeore, my answer is only partial.

Screenshot of the analyser in Mixxx

share|improve this answer
Worth noting that tags are not saved in the files in newer versions of Mixxx. The option is disabled, due to potential data corruption, and Mixxx never saved BPM to files. – naught101 Mar 11 '14 at 1:10

SongKong (pro version) can calculate the BPM of over a million songs as they are matched to MusicBrainz. It updates your iTunes folders in real time.

share|improve this answer

Banshee has an option for detecting BPM.

And if you only want to detect the BPM for a select range of songs, open their proprties dialogs, go to the Extra tab and click on the Detect button. enter image description here

share|improve this answer
I know, see my question... – Ingo Dec 8 '11 at 12:05

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.