This repository is the official implementation of SCNet: Sparse Compression Network for Music Source Separation
First, you need to install the requirements.
cd SCNet-main
pip install -r requirements.txt
We use the accelerate package from Hugging Face for multi-gpu training.
accelerate config
You need to modify the dataset path in the /conf/config.yaml. The dataset folder should contain the train and valid parts.
data:
wav: /path/to/dataset
The training command is as follows. If you do not specify a path, the default path will be used.
accelerate launch -m scnet.train --config_path path/to/config.yaml --save_path path/to/save/checkpoint/
The model checkpoint was trained on the MUSDB dataset. You can download it from the following link:
The large version is now available.
We have performed normalization on the model's input during training, which helps in stabilizing the training process (no code modifications are needed during inference).
python -m scnet.inference --input_dir path/to/test/dir --output_dir path/to/save/result/ --checkpoint_path path/to/checkpoint.th
If you find our work useful in your research, please consider citing:
@misc{tong2024scnet,
title={SCNet: Sparse Compression Network for Music Source Separation},
author={Weinan Tong and Jiaxu Zhu and Jun Chen and Shiyin Kang and Tao Jiang and Yang Li and Zhiyong Wu and Helen Meng},
year={2024},
eprint={2401.13276},
archivePrefix={arXiv},
primaryClass={eess.AS}
}