I've been running sound for a bunch of our Imperial Court shows, which isn't a problem. However...
To help manage the flow of the shows (or rather to provide a show of satisfactory length without having an unending drag-a-thon), our event organizers have taken to inserting dance breaks.
Now I don't dance, or rather I dance very badly, so I'm not the most up on dance music. I do, however have nearly my entire CD collection on iTunes, and I'm developing a sense of what sort of music our gang likes to dance to (generic techno ain't it).
'course, that isn't the only talent a DJ needs. Not only can a DJ suck by playing the wrong music, there's also plenty of opportunity to suck by not controlling the flow of the mix. Long breaks between tracks, sudden unintended tempo changes, bad mood shifts, the opportunities are endless.
Running iTunes on Party Shuffle and the built-in (primitive) crossfade feature can solve the problem of long breaks.
It's easy to put together playlists that will sustain a mood. Manual, but easy.
Tempo is a bear. A really good DJ can identify tempo pretty quickly, can snag more songs that are at or near the same tempo, and mix them seamlessly. Not me.
So that comes to the whole point of this... looking at tools for getting tempi from MP3 tracks.
AskTheDJ is an automated DJ tool from WildBits. It's pretty slick, and it's dirt cheap. It analyzes beat rates, and adjusts tempo and pitch to automatically create a seamless crossfade into the next song.
Only problem is that the beat rate analysis algorithm is pretty simple. It has no problem computing the tempo of a thumpa-thumpa techno track, but give it something with a more sophisticated rhythm line (swing) and it comes up as often as not with a whack-ass number that is nowhere near right.
Fine if you're using AskTheDJ to play the music back, but if you're not kind of disastrous.
iTunes-BPM Inspector is an AppleScript that plugs into iTunes. Simple (to the point of being primitive), it gives you a field. Click on the field in time with the music and it shows you the beat rate. When the beat rate turns dark you're clicking at a consistent speed, and you're probably right. Then click the "set" button and it sets the BPM field in iTunes.
Slow, not incredibly precise, but much less likely to come up with something totally wrong (and if it does, it's your fault).
Once you've got beat rates, it's easy to reorder upcoming songs for a more pleasing mix.
Oh, the obsessive insanity part? Only a few techno albums came with beat rates for each song identified. 3100 more songs to do this with.