/vocal-remover

Vocal Remover using Deep Neural Networks

Primary LanguagePythonMIT LicenseMIT

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