spleeter README

The project's README from github.com/deezer/spleeter. As one markdown file: README.md.

Github actions PyPI - Python Version PyPI version Conda Docker Pulls Open In Colab Gitter chat status

:warning: Spleeter 2.1.0 release introduces some breaking changes, including new CLI option naming for input, and the drop of dedicated GPU package. Please read CHANGELOG for more details.

About

Spleeter is Deezer source separation library with pretrained models written in Python and uses Tensorflow. It makes it easy to train source separation model (assuming you have a dataset of isolated sources), and provides already trained state of the art model for performing various flavour of separation :

2 stems and 4 stems models have high performances on the musdb dataset. Spleeter is also very fast as it can perform separation of audio files to 4 stems 100x faster than real-time when run on a GPU.

We designed Spleeter so you can use it straight from command line as well as directly in your own development pipeline as a Python library. It can be installed with pip or be used with Docker.

Projects and Softwares using Spleeter

Since it's been released, there are multiple forks exposing Spleeter through either a Guided User Interface (GUI) or a standalone free or paying website. Please note that we do not host, maintain or directly support any of these initiatives.

That being said, many cool projects have been built on top of ours. Notably the porting to the Ableton Live ecosystem through the Spleeter 4 Max project.

Spleeter pre-trained models have also been used by professionnal audio softwares. Here's a non-exhaustive list:

🆕 Spleeter is a baseline in the ongoing Music Demixing Challenge!

Spleeter Pro (Commercial version)

Check out our commercial version : Spleeter Pro. Benefit from our expertise for precise audio separation, faster processing speeds, and dedicated professional support.

Quick start

Want to try it out but don't want to install anything ? We have set up a Google Colab.

Ready to dig into it ? In a few lines you can install Spleeter and separate the vocal and accompaniment parts from an example audio file. You need first to install ffmpeg and libsndfile. It can be done on most platform using Conda:

# install dependencies using conda
conda install -c conda-forge ffmpeg libsndfile
# install spleeter with pip
pip install spleeter
# download an example audio file (if you don't have wget, use another tool for downloading)
wget https://github.com/deezer/spleeter/raw/master/audio_example.mp3
# separate the example audio into two components
spleeter separate -p spleeter:2stems -o output audio_example.mp3

:warning: Note that we no longer recommend using conda for installing spleeter.

⚠️ There are known issues with Apple M1 chips, mostly due to TensorFlow compatibility. Until these are fixed, you can use this workaround.

You should get two separated audio files (vocals.wav and accompaniment.wav) in the output/audio_example folder.

For a detailed documentation, please check the repository wiki

Development and Testing

This project is managed using Poetry, to run test suite you can execute the following set of commands:

# Clone spleeter repository
git clone https://github.com/Deezer/spleeter && cd spleeter
# Install poetry
pip install poetry
# Install spleeter dependencies
poetry install
# Run unit test suite
poetry run pytest tests/

Reference

If you use Spleeter in your work, please cite:

@article{spleeter2020,
  doi = {10.21105/joss.02154},
  url = {https://doi.org/10.21105/joss.02154},
  year = {2020},
  publisher = {The Open Journal},
  volume = {5},
  number = {50},
  pages = {2154},
  author = {Romain Hennequin and Anis Khlif and Felix Voituret and Manuel Moussallam},
  title = {Spleeter: a fast and efficient music source separation tool with pre-trained models},
  journal = {Journal of Open Source Software},
  note = {Deezer Research}
}

License

The code of Spleeter is MIT-licensed.

Disclaimer

If you plan to use Spleeter on copyrighted material, make sure you get proper authorization from right owners beforehand.

Troubleshooting

Spleeter is a complex piece of software and although we continously try to improve and test it you may encounter unexpected issues running it. If that's the case please check the FAQ page first as well as the list of currently open issues

Windows users

It appears that sometimes the shortcut command spleeter does not work properly on windows. This is a known issue that we will hopefully fix soon. In the meantime replace spleeter separate by python -m spleeter separate in command line and it should work.

Contributing

If you would like to participate in the development of Spleeter you are more than welcome to do so. Don't hesitate to throw us a pull request and we'll do our best to examine it quickly. Please check out our guidelines first.

Note

This repository include a demo audio file audio_example.mp3 which is an excerpt from Slow Motion Dream by Steven M Bryant (c) copyright 2011 Licensed under a Creative Commons Attribution (3.0) license Ft: CSoul,Alex Beroza & Robert Siekawitch

spleeter (deezer/spleeter)

Searching Database…

28.5K ·GitHub
这是做什么用的?Spleeter 是 Deezer 出品的人声分离库:提供预训练模型,用 Python 和 TensorFlow 编写,可以把一首歌拆分成多条音轨,比如人声、鼓、贝斯和钢琴。它有 2 轨、4 轨和 5 轨三种版本,其中 2 轨和 4 轨模型在 musdb 数据集上得分很高。
它是命令行工具还是 Python 库?两者都是。它既可以作为命令行工具直接使用,也可以作为 Python 库直接接入你自己的开发流程。可以用 pip 安装,也可以通过 Docker 运行。
怎么把它跑起来?先安装 ffmpeg 和 libsndfile —— 在大多数平台上用 Conda 就能装好 —— 然后用 pip 安装 Spleeter,或者使用 Docker。如果不想安装任何东西就想试用,有官方的 Google Colab 可以用。
在某些平台上会不会出问题?有几个问题。Apple M1 芯片存在已知问题,主要和 TensorFlow 的兼容性有关,README 里给出了变通办法。在 Windows 上,spleeter 快捷方式有时会失效 —— 请改用 python -m spleeter separate。
它是完全免费的,还是有付费版本?代码采用 MIT 许可证,所以这个库本身是免费的。Deezer 还提供付费的商业版本 Spleeter Pro,分离效果更精准,处理速度更快,并配有专门的专业技术支持。
有图形界面吗,还是只能用命令行?Spleeter 本身只有命令行和 Python 库两种形式。社区里有几个分支项目给它套上了图形界面,或者做成了免费和收费的网站,但 Deezer 不托管、不维护也不直接支持这些项目。
有哪些知名的音频产品是基于 Spleeter 做的?它的预训练模型支撑着 iZotope RX 8 里的 Music Rebalance、SpectralLayers 7 的 Unmix 功能、Acon Digital Acoustica 7、VirtualDJ 的音轨分离功能,以及 Algoriddim 的 NeuralMix 和 djayPRO 应用。Spleeter 4 Max 还把它移植进了 Ableton Live 生态。
我可以不用预训练模型,自己训练分离模型吗?可以 —— 它的设计目标就是让训练变得简单,只要你有一套单独音源的数据集。对大多数用户来说,自带的预训练模型就够用了:它们效果是业界领先的,还被当作 Music Demixing Challenge 的基准。
我可以用它处理有版权的歌曲吗?MIT 许可证只覆盖代码,不覆盖你处理的内容。README 里提醒,如果你想对有版权的素材使用 Spleeter,应当事先从版权方那里获得正式授权。
Creator
deezer
Size
9.4 MB
Stars
28.5K
Age
7y
Commits · 90 Days