powered by tcl/tk
BallroomDJ - The Ballroom Music Player

BallroomDJ is a ballroom music player. It is designed to be able to play music the entire evening without intervention. Use for your personal training, dance studio, and ballroom, dancesport, argentine tango, country western, or west coast swing events.

Translators Needed!

Forum: BallroomDJ Forum

Registration code is one four five eight

Wiki: BallroomDJ Wiki

Registration code is one four five eight


Download BallroomDJ:


   BallroomDJ version 2.25.2 (.tar.gz)


   BallroomDJ version 2.25.2 (.exe)
   Installation Instructions

Mac OS X

   BallroomDJ version 2.25.2 (.pkg)
   Installation Instructions


  • Runs on Windows (XP, Vista, 7, 8, 10), Mac OS X, Linux and FreeBSD.
  • Free and open source software.
  • Full unicode support. Supports all languages and character sets.
  • Works on 4K computer displays.
  • Uses your music collection from your hard drive.
  • No limitations on the number of audio files.
  • Uses VLC as the audio player.
  • Extensive context sensitive help.
  • Additional help with images on the wiki
  • Set up profiles to save different configurations of BallroomDJ.
  • Synchronize the BallroomDJ database and audio files between multiple computers.
  • Restart where you left off after a crash, power outage or accidental exit
  • Import data from iTunes.
  • Build a CD or DVD with the volume adjustments, speed adjustments, song start, song end and maximum play time applied.
  • Player Controls:
    • Requests.
    • Requests of external songs not in the database.
    • Seek in song.
    • Speed w/pitch control.
    • Repeat.
    • Pause at end.
    • Pause after each song.
    • Songs can be removed/moved/added to the queue while playing.
    • Edit upcoming songs in the music queue.
  • Configure maximum play time.
  • Configure gap between songs.
  • Configure the marquee display.
  • Raffle games.
  • Manual song selection.
    • Use a song list to play songs in an exact order.
    • Export song lists to CSV, HTML, M3U or M3U8.
  • Automatic playlist selection.
    • Choose which dances and how often they play compared to other dances.
    • Choose songs based on dance rating.
    • Allow songs tagged with a particular keyword to play.
    • Require songs tagged with a particular keyword to play.
  • Sequenced playlists
    • Define a sequence of dances to play in a particular order.
  • Flexible playlist generation and controls.
    • Stop playing at a particular time and pause or continue with the next playlist.
    • Stop playing after some number of songs and pause or continue with the next playlist.
    • Configure gap between songs for the playlist.
    • Configure maximum play time for the playlist.
    • Pause after each song.
    • Mix manual, sequenced and automatic playlists in the playlist queue.
    • Rearrange or modify the playlist queue at any time.
  • Create a song list based on the playlist queue.
  • Export the playlist queue to a startup file for fast and easy startup.
  • Music manager and Editor.
    • Easily filter your song collection to select the songs to work with.
    • Edit one song or many songs.
    • Batch edit songs.
    • Mark songs as the same song to prevent similar songs from playing.
    • Normalize the volume of the song.
    • Trim silence from the beginning and end of the song.
    • Apply Adjustments (song start, song end, speed adjustments and maximum play time) to the song.
    • Column display is fully configurable.
  • Smart file manager.
    • Highlights which files are dependent on another.
    • Renaming a file modifies dependent files.
    • Back up BallroomDJ data files
  • Support for multi-media keys and remote controls.
  • History of played songs.
    • Requeue a song from the history list.
  • Dual Queues:
    • Two music queues and two playlist queues for ultimate flexibility.
  • Optional: Save the BallroomDJ database information into the audio file tags.
  • Optional BPM.
    • Configure BPM Ranges per dance.
    • BPM Counter.
    • See the BPM changes as the song speed is adjusted.
  • Optional announcements associated with a dance.
  • Optional music management to organize your audio files.
    • Paths to the audio files are fully configurable.
    • Files are renamed automatically.
    • Song lists are updated when files are renamed.
  • Optional status tracking for the audio files.

Required Software:

Linux / FreeBSD:

  • vlc
  • tcl (8.6+)
  • tk (8.6+)
  • libtk-img
  • tdom
  • python 2.x
  • pulseaudio-utils
  • flac
  • faad
  • python-mutagen
  • vorbis-tools
  • sox
  • libsox-fmt-mp3
  • lirc (optional)
  • devilspie (optional)
  • imagemagick (optional)


Mac OS X:

  • Xcode
  • Xcode command
    line utilities
  • MacPorts
    • tcl
    • vlc
    • tk
    • flac
    • faad2
    • sox
    • vorbis-tools
    • imagemagick (optional)


Copyright 2012-2016 Brad Lanam, Walnut Creek, CA, USA

This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.

2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.

3. This notice may not be removed or altered from any source distribution.


There is more documentation available on the BallroomDJ Wiki.

Visit the BallroomDJ Forums for help. (Registration code is one four five eight).

Open a support ticket. (Registration code is one four five eight).

BallroomDJ is free and open source software. Support for bugs and problems is free.

If you would like to pay for support you have received, please use one of the PayPal buttons below.

Current localizations:

English (US)brad.lanam.comp @ gmail.com
English (GB)brad.lanam.comp @ gmail.com
Deutsch(not finished) --
简体中文‬(not finished) --
繁體中文‬(not finished) --

Help translate BallroomDJ: crowdin.com

Translate main web page