This is a DSTM mixer that uses Musly to obtain 'similar' tracks to 5 seed tracks. I started this plugin as MusicIP takes a long time to analyse files (and is closed source), whereas Musly is much faster (and open source) - ~20k tracks took about 50 minutes to analyse on a 5 year old i7 laptop with an SSD (as opposed to around 70hrs for MusicIP). However, in my opinion, the mixes are nowhere near as good and a lot of tracks need to be filtered out due to genre, matching artist from seed tracks, etc. Still, Ive made this release in case others are interested. The Musly analyser uses some code taken from Roland0s LMS-Musly plugin.
There are 2 parts to this plugin:
To run the 'musly-server' script you will need to build the musly library itself - my github repo has precompiled libraries for Fedora32 and Raspbian. You might also be able to use one of the binaries from Roland0s LMS-Musly plugin
Files are analysed by calling:
Once music has been analysed, the API server can then be started:
Please refer to https://github.com/CDrummond/musly-server for more details. This server needs to be running before the DSTM mixer can create a mix. A systemd service is provided.
The DSTM plugin can be installed by using a release ZIP file from github, or by adding my repo file to LMS.
There are 2 parts to this plugin:
- The DSTM plugin, which is a standard LMS Plugin - https://github.com/CDrummond/lms-muslymixer
- A python script (musly-server) used to analyse music tracks, create a 'similarity' database, and provide access to query track similarity via a simple HTTP API - https://github.com/CDrummond/musly-server
To run the 'musly-server' script you will need to build the musly library itself - my github repo has precompiled libraries for Fedora32 and Raspbian. You might also be able to use one of the binaries from Roland0s LMS-Musly plugin
Files are analysed by calling:
Code:
musyl-server.py --analyse <path to music>
Code:
musyl-server.py
The DSTM plugin can be installed by using a release ZIP file from github, or by adding my repo file to LMS.