Music source separation is a task to separate audio recordings into individual sources. This repository is an PyTorch implmementation of music source separation. Users can separate their favorite songs into different sources by installing this repository. In addition, users can train their own music source separation systems using this repository. This repository also includes speech enhancement, instruments separation, etc.
Vocals and accompaniment separation: https://www.youtube.com/watch?v=WH4m5HYzHsg
pip install -r requirements.txt
We use the MUSDB18 dataset to train music source separation systems. The trained system can be used to separate vocals, accompaniments, bass, and other sources. Execute the following script to download and decompress the MUSDB18 dataset:
./scripts/0_download_datasets/musdb18.sh
The dataset looks like:
./datasets/musdb18 ├── train (100 files) │ ├── 'A Classic Education - NightOwl.stem.mp4' │ └── ... ├── test (50 files) │ ├── 'Al James - Schoolboy Facination.stem.mp4' │ └── ... └── README.md
We pack audio waveforms into hdf5 files to speed up training.
."/scripts/1_pack_audios_to_hdf5s/musdb18/sr=44100,chn=2.sh"
./scripts/2_create_indexes/musdb18/create_indexes.sh
./scripts/3_create_evaluation_audios/musdb18/create_evaluation_audios.sh
./scripts/4_train/musdb18/train.sh
./scripts/5_inference/musdb18/inference.sh
[1] Qiuqiang Kong, Yin Cao, Haohe Liu, Keunwoo Choi, Yuxuan Wang, Decoupling Magnitude and Phase Estimation with Deep ResUet for Music Source Separation, International Society for Music Information Retrieval (ISMIR), 2021.
@inproceedings{kong2021decoupling,
title={Decoupling Magnitude and Phase Estimation with Deep ResUet for Music Source Separation.},
author={Kong, Qiuqiang and Cao, Yin and Liu, Haohe and Choi, Keunwoo and Wang, Yuxuan },
booktitle={ISMIR},
year={2021},
organization={Citeseer}
}