vocal-remover icon indicating copy to clipboard operation
vocal-remover copied to clipboard

Vocal Remover using Deep Neural Networks

vocal-remover

Release Release

This is a deep-learning-based tool to extract instrumental track from your songs.

Installation

Getting vocal-remover

Download the latest version from here.

Install PyTorch

See: GET STARTED

Install the other packages

cd vocal-remover
pip install -r requirements.txt

Usage

The following command separates the input into instrumental and vocal tracks. They are saved as *_Instruments.wav and *_Vocals.wav.

Run on CPU

python inference.py --input path/to/an/audio/file

Run on GPU

python inference.py --input path/to/an/audio/file --gpu 0

Advanced options

--tta option performs Test-Time-Augmentation to improve the separation quality.

python inference.py --input path/to/an/audio/file --tta --gpu 0

--postprocess option masks instrumental part based on the vocals volume to improve the separation quality.
Experimental Warning: If you get any problems with this option, please disable it.

python inference.py --input path/to/an/audio/file --postprocess --gpu 0

Train your own model

Place your dataset

path/to/dataset/
  +- instruments/
  |    +- 01_foo_inst.wav
  |    +- 02_bar_inst.mp3
  |    +- ...
  +- mixtures/
       +- 01_foo_mix.wav
       +- 02_bar_mix.mp3
       +- ...

Train a model

python train.py --dataset path/to/dataset --reduction_rate 0.5 --mixup_rate 0.5 --gpu 0

References

  • [1] Jansson et al., "Singing Voice Separation with Deep U-Net Convolutional Networks", https://ismir2017.smcnus.org/wp-content/uploads/2017/10/171_Paper.pdf
  • [2] Takahashi et al., "Multi-scale Multi-band DenseNets for Audio Source Separation", https://arxiv.org/pdf/1706.09588.pdf
  • [3] Takahashi et al., "MMDENSELSTM: AN EFFICIENT COMBINATION OF CONVOLUTIONAL AND RECURRENT NEURAL NETWORKS FOR AUDIO SOURCE SEPARATION", https://arxiv.org/pdf/1805.02410.pdf
  • [4] Liutkus et al., "The 2016 Signal Separation Evaluation Campaign", Latent Variable Analysis and Signal Separation - 12th International Conference