Docker Facebook Demucs
This repository dockerizes Facebook Demucs to split music tracks into different tracks (bass, drums, voice, others).
Clone this repository
git clone https://github.com/xserrat/docker-facebook-demucs.git demucs
Split a music track
- Copy the track you want to split into the
runjob in the
Makefile, specifying the
trackargument with only the name of the file:
make run track=mysong.mp3
This process will take some time the first time it is run, as the execution will:
- Download the Docker image that is setup to run the
- Download the pretrained models.
demucsto split the track.
Subsequent runs will not need to download the Docker image or download the models, unless the model specified has not yet been used.
The following options are available when splitting music tracks with the
||Enable Nvidia CUDA support (requires an Nvidia GPU).|
||The model used for audio separation. See https://github.com/facebookresearch/demucs#separating-tracks for a list of available models to use.|
||Output separated audio in
||Individual track to split/separate from the others (e.g., you only want to separate drums). Valid options are
# Use the "fine tuned" demucs model make run track=mysong.mp3 model=htdemucs_ft # Enable Nvidia CUDA support and output separated audio in mp3 format make run track=mysong.mp3 gpu=true mp3output=true
To experiment with other
demucs options on the command line, you can also run the Docker image interactively via the
run-interactive job. Note that only the
gpu option is applicable for this job.
make run-interactive gpu=true
Building the Image
The Docker image can be built locally via the
This repository is released under the MIT license as found in the LICENSE file.