Mixxx, free open source DJ software for performing live mixes.
It's been created for DJs, by DJs. It has numerous features
including parallel waveform summaries and displays, MP3, OGG, WAVE
and FLAC playback, pitch independent time stretch, vinyl emulation,
wave recording, BPM detection, multichannel and multiple soundcard
support, MIDI controllers support and scripting engine, a skinnable
interface

This requires scons, ladspa-sdk, libsndfile, portaudio, and portmidi.