BallroomDJ ist ein Musik-Player für Tanzveranstaltungen. Er ist darauf ausgelegt, dass der Rechner die Musik auswählt und die ganze Zeit ohne manuelle Eingriffe abspielt. Die Auswahl erfolgt anhand der Wahl und Gewichtung der verschiedenen Tänze durch den Benutzer und anhand verschiedener Regeln. Die Regeln sind, die Wiederholung eines Tanzes zu vermeiden, Folgen von ähnlichen Arten von Tänzen, Tänzen ähnlicher Geschwindigeit oder Tänzen aus der gleichen Familie zu vermeiden. (non)