tsurumeso/vocal-remover

Vocal Remover using Deep Neural Networks

Python

1,761

192 commits

updated Sep 10, 2026

See the code

README

vocal-remover

Release Release

This is a deep-learning-based tool for extracting the 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

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

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

The --postprocess option masks the instrumental track based on the vocal volume to improve separation quality.

[!WARNING] This is an experimental feature. If you encounter 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 --mixup_rate 0.5 --reduction_rate 0.5 --gpu 0

References

audio
deep-learning
pytorch
segmentation
spectrogram
vocal-remover
vocal-separation

tsurumeso/vocal-remover

Vocal Remover using Deep Neural Networks

Python

1,761

192 commits

updated Sep 10, 2026

See the code

README

vocal-remover

Release Release

This is a deep-learning-based tool for extracting the 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

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

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

The --postprocess option masks the instrumental track based on the vocal volume to improve separation quality.

[!WARNING] This is an experimental feature. If you encounter 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 --mixup_rate 0.5 --reduction_rate 0.5 --gpu 0

References

audio
deep-learning
pytorch
segmentation
spectrogram
vocal-remover
vocal-separation

Significant stargazers

Maged Saeed

198 followers · starred Jun 2022

rkfg

65 followers · starred Dec 2023

xhe

141 followers · starred Aug 2023

Hunter Hogan

17 followers · starred May 2024