PinoStudio 1

Full Version: Demucs (Music Source Separation)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Demucs Music Source Separation in the Waveform Domain

We provide an implementation of Demucs and Conv-Tasnet for music source separation on the MusDB dataset. They can separate drums, bass and vocals from the rest with state-of-the-art results, surpassing previous waveform or spectrogram based methods. The architecture and results obtained are detailed in our paper Music Source Separation in the waveform domain.

Demucs is based on U-Net convolutional architecture inspired by Wave-U-Net and SING, with GLUs, a BiLSTM between the encoder and decoder, specific initialization of weights and transposed convolutions in the decoder.

Conv-Tasnet is a separation model developed for speech which predicts a mask on a learnt over-complete linear representation using a purely convolutional model with stride of 1 and dilated convolutional blocks. We reused the code from the kaituoxu/Conv-TasNet repository and added support for multiple audio channels.

When trained only on MusDB, Conv-Tasnet achieves higher SDR than Demucs (5.7 vs 5.6). However, the audio it generates has significant artifacts as measured by human evaluations (MOS is 3.2 for Demucs, 2.9 for Conv-Tasnet). When trained with extra training data, Demucs and Conv-Tasnet obtain the same SDR. See our paper Section 6 for more details or listen to our audio samples .

[Image: demucs.png]

Using Mac OS X

If you do not already have Anaconda installed or much experience with the terminal on Mac OS X here are some detailed instructions:

1. Download Anaconda 3.7 64 bits for MacOS:
2. Open Anaconda Prompt in MacOSX:
3. Follow these commands:

cd ~
conda install git
git clone
cd demucs
conda env update -f environment-cpu.yml
conda activate demucs
python3 -m demucs.separate --dl -n demucs -d cpu PATH_TO_AUDIO_FILE_1

[Image: demucs-active.jpg]

You can drag the .mp3 file to the console and it will paste the mp3 path. To later reuse Demucs, simply start again the Anaconda Prompt and run
cd ~/demucs
python3 -m demucs.separate --dl -n demucs -d cpu PATH_TO_AUDIO_FILE_1

[Image: demucs-separate.jpg]

Nota Importante:
En mi computador que tiene problemas de memoria y capacidad, debo usar el siguiente código, con este código me funciona para separar los Tracks en MULTIPISTA.

python3 -m demucs.separate --dl -n tasnet /Path_to_music/any_song.mp3 -d cpu


Big Grin