Skip to content

Spleeter

Python library and command-line tool that splits music into vocals, drums, bass and other tracks.

Stars
28.5k
Forks
3k
Licence
MIT
Language
Python
Last update
9 days ago
Type
Library

What it is

Spleeter is an open-source Python library from Deezer that separates a song into separate stems, such as vocals and accompaniment, using pretrained TensorFlow models. You can run it from the command line or call it from your own Python code. People use it to make karaoke tracks, isolate parts of a recording, or build audio tools on top of it.

  • Split a song into vocals and accompaniment with one command using the 2stems model
  • Separate a track into vocals, drums, bass and other using the 4stems model
  • Use the 5stems model to also isolate piano
  • Call the Separator from a Python script to process many files in a batch

Great for

  • Musicians or producers who want quick vocal or accompaniment separation from a song
  • Developers adding stem separation to an audio pipeline in Python
  • Researchers who want a baseline model or want to train their own separation models from isolated sources
  • Users comfortable installing Python packages and using a terminal

Not ideal for

  • People who want a point-and-click app with no setup, since the README centers on pip, Docker and the command line
  • Anyone needing commercial-grade results with support, since the README points to a separate paid Spleeter Pro product for that
  • Users on Apple M1 chips without the README's suggested workaround, since the README notes known TensorFlow compatibility issues there
Step-by-step guide: how to use SpleeterInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Python (exact version not stated in the README excerpt; see the PyPI package) · ffmpeg · libsndfile · TensorFlow (installed as a dependency; version not stated in the README excerpt)

    Install ffmpeg and libsndfile (the README says this is the way to do it on most platforms)

    conda install -c conda-forge ffmpeg libsndfile

    Install spleeter with pip

    pip install spleeter

    Clone the repository (for development and tests)

    git clone https://github.com/Deezer/spleeter && cd spleeter
  2. 2

    Run it

    • Install ffmpeg and libsndfile, then install spleeter with pip
    • Download the example file audio_example.mp3 from the repository, or use your own audio file
    • Run: spleeter separate -p spleeter:2stems -o output audio_example.mp3
    • Find vocals.wav and accompaniment.wav in the output/audio_example folder
  3. 3

    Get the most out of it

    • Use the 4stems or 5stems models if you need drums, bass or piano as separate tracks, not just vocals
    • Use it from Python with the Separator API described in the project wiki when you need batch processing
    • On Windows, follow the README's workaround and run python -m spleeter separate if the spleeter command fails
    • Check the wiki's Separation Performances page and the FAQ for details the README links to but does not show

Downloads

Strengths

  • Ships several pretrained models for 2, 4 and 5 stem separation, so no training is needed to start
  • Usable both as a command-line tool and as a Python library, and available through pip or Docker
  • MIT-licensed code with a long track record and a peer-reviewed software paper cited in the README

Trade-offs

  • The README notes known issues: the spleeter shortcut command may fail on Windows, and Apple M1 chips may need a workaround
  • Version 2.1.0 introduced breaking CLI changes and dropped the dedicated GPU package, so older tutorials may not match current usage
  • The README says separated audio is only as legitimate as your rights to the source, and warns to get authorization for copyrighted material

How it compares

ProjectStarsTypeLevelUpdatedBest for
spleeter (this)28.5kLibraryintermediate9 days agoMusicians or producers who want quick vocal or accompaniment separation from a song
demucs10.4kAI model / agentbeginner2.5 years agoMusicians who want to isolate vocals or drums from a song for practice or remixing
nni14.4kLibraryintermediate2.3 years agoResearchers comparing hyperparameter tuning algorithms such as TPE, Hyperband, or Bayesian methods
netron33.6kAppbeginner4 days agoEngineers who need to check a model's layers and tensor connections before deploying it
onnxruntime22.2kLibraryintermediate4 days agoDevelopers who want to deploy a trained model inside an application or service
wandb11.3kLibrarybeginner4 days agoMachine learning engineers who want to compare training runs over time

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.