This is a free Software to organize your DJ-Sets. Any commercial distribution without my acknowledgement is strictly prohibited!
This software is a tool for DJs and musicians, which is suitable for organising music and planning gigs. The main reason for implementing this programme is based on the following problem:
In many cases, DJs create a "DJ Set" or "setlist" before a performance. This is a list of songs to be played at the gig. It contains information about the tempo, key and length of the song to ensure the best possible performance. Currently, this can be done with a text file or a handwritten note on paper. However, there are some problems in these cases:
- The representation of the DJ set is often unclear and inconsistent. Additionally to that, updating text files or handwritten notes can be quite time-consuming.
- The length of a set has to be calculated by hand and is constantly changing if new songs are added or taken out.
- During a performance, it is difficult to note the current progress in the DJ-Set. Either a mark in the text file or a pen on the handwritten note is necessary, which can be annoying.
- There is no guarantee that a music file for a particular song exists on the DJ's computer. So if he or she e.g. forgets to copy or download the file, a song may be planned in the DJ-Set that is not available because it is stored on another computer. This can lead to very embarrassing moments on stage.
- The organisation of many setlists and the corresponding songs becomes increasingly difficult as the number of text files or handwritten notes grows.
DJ-Sets is intended to solve or at least reduce the problems mentioned in the previous section. For this purpose, the tool offers the following features:
- Songs can be saved consistently. In addition to artist and title, further data such as key, tempo in BPM, genre, length and a file path to the song can be stored on the computer. In addition to adding songs, it is also possible to delete, edit and view all songs.
- Since in most cases there is a very large amount of songs, it is possible to search the set of all songs by artist and title.
- Just like songs, setlists can be created, edited, deleted and viewed. A setlist always includes a title, a description and all the songs it contains.
- In addition to editing the title and description, songs can be added to and deleted from a setlist. Furthermore, all songs in a set list can be moved by drag&drop.
- Whenever changes are made to a setlist, its length is automatically recalculated and can be viewed immediately after the change.
- Setlists can be exported as txt-files and thus shared with other DJs and musicians. In addition, setlists can be exported as m3u-files and can thus be used by other applications to import or play a playlist.
- Each song in a setlist can be marked with a tick to indicate which songs have already been played and which are still pending.
- If a song has a valid file path, the stored audio-file can be played back.
- Another feature is the scanning of the music folder for music files in various formats (.mp3, .wav, .ogg, .flac, .aac, .wma) and the automatic integration into the existing song management. It is possible to choose whether all songs in the latter are to be replaced by the newly scanned songs or whether an integration via merge should be used.
- The scan path for the music scanning process mentioned in the previous point can be set in the settings. Note that this is the main folder, i.e. all subfolders are also scanned for music files.
- Setlists can be autogenerated based on length, key, tempo and genre.
- All program-data is stored centrally in a local SQLite database.
- All program-settings are stored separately from the programme data in a JSON file.
When the programme is started for the first time, a folder called "DJSets" is created in the documents folder of the computer. The folder "ApplicationData" is located in this folder. This folder contains the SQLite database for the programme in the form of the file "djsets.db" as well as the user settings in the form of the file "djsets_appconfig.json". If there is no longer any need to use the programme, the "DJSets" folder can be easily deleted.
This app was programmed with C# and WPF using the following libraries: