BpmDj is a program that can be used to DJ. It works under Linux and plays Mp3's/Ogg's. It has a fully automatic BPM counter. It can determine the sound color. It has a full fledged QT based interface. It will help you manage a large amount of songs. Further it can help in creating playlist and has proven to be very robust. The program also allows offline automatic mixing and contains a wavelet based beat graph analyzer to visualize audio tracks.