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.