DiscoDOS is a sophisticated and flexible command line tool that brings typical features known from digital DJing systems to the Vinyl DJ. Create playlists, fetch key and BPM, let DiscoDOS help you search your collection.
_______ _______ ________ / \ / / / ___ / ___ / _____/ / / / / / / \____ \ / /__/ / /__/ _____/ / D i s c o / / / /_______/\_______/________/
is based on data pulled from a users Discogs record collection. Tracks can be organized into playlists and mix-transitions rated. Additionally the collection can be linked to the online music information services MusicBrainz and AcousticBrainz to retrieve further information about your music (e.g key and BPM).
- Windows Installer
- macOS Installer
- Linux - read the Installation Guide
- Install the latest development version directly from git master
DiscoDOS guides you through its setup automatically on first run. For further assistance especially on accessing your personal Discogs record collection, read this chapter of the Installation Guide.
View the Quickstart Guide.
This video presents the concepts of Mixes, Suggestions, Discogs Collection, AcousticBrainz (7 min view)
Finding key & BPM compatible tracks in your Discogs Collection (1 min view)
How to fetch key & BPM from AcousticBrainz (2 min view)
DiscoDOS is FOSS
DiscoDOS is Free and Open Source Software and licensed under the GNU General Public License (GPL3). If you are a developer or a tech-interested person, check out the project repository on github.
Well, there is no actual roadmap but just some ideas in what direction this software could advance and things that I personally would find nice to have. If you have any preference or ideas yourself, please let me know (file a github issue)
Primarily DiscoDOS was built to help me write down and analyze my Vinyl sets but often I play both Vinyl and Digital. It would be cool if DiscoDOS could view an internal playlist together with lists from digital DJing software. I did some research already and think it should be doable without too much hassle. In order of my personal preference (and supposed ease of implementation) the DJing systems I am talking about are:
- NI Traktor
- Pioneer Rekordbox
An alternative approach to finding out musical key and BPM via AcousticBrainz
(which will be discontinued in 2023) is to use the information saved in media
files metadata on the user’s harddisk. There is loads of tools existing already
that manage to find out key, BPM and other things and tag files accordingly.
Each track in the DiscoDOS
track table could be matched with a file in the
user’s digital music collection, best by using an awesome tool that is already
existing: Beets. The Beets database of a user could be
queried to find out where a specific releases tracks are located on the
Since python3-discogs-client (which DiscoDOS uses to access discogs.com) was
extended to handle a user’s sales inventory, I was thinking to build a
sell command into DiscoDOS.
More color in DiscoDOS would be nice! Colors on terminal are limited and cross-platform compatibility is probably not easy but still - who doesn’t love colored terminal text?
The *Brainz matching algorithm is working quite well and does find a lot (if available) but there is room for improvement.
Update 2022: Thoughts regarding GUI:
I would rather prefer to write a GUI in Googles Flutter than in React Native. Similar to React Native, Flutter also would be beneficial in terms of reusing code to write a regular “webapp version” of DiscoDOS.
A draft of a GUI written in PyQT5 was contributed to DiscoDOS in 2021 and I continued working on it. Since I’m not a very skilled QT programmer (yet) and don’t find the time, there only is a preview available that is working fine but misses quite some functionality to really make it useful. See the release notes of Discodos 1.1 for details on how to try it out.
Any other ideas how DiscoDOS could be improved? Let me know!
Find out what changed between DiscoDOS versions on the github releases page
DiscoDOS is registered on libreav.org, a site collecting information about Free and Open Source music software.
There is an IRC channel that announces whenever new versions are released. Join #libreav on freenode.net, or if you are registered on matrix.org or any other Matrix homeserver, join room #freenode_#libreav:matrix.org.
Alternatively register to the J0J0 Todos mailinglist