Analysis updated 2026-06-20
Create a karaoke version of any song by removing the vocals from the final stereo recording.
Isolate drum or bass lines from a track for sampling, remixing, or transcription.
Feed clean stem files (vocals, drums, bass) into DJ software or other music production tools.
Batch-process a folder of songs to extract instrument stems automatically from the command line.
| deezer/spleeter | google/python-fire | stanford-oval/storm | |
|---|---|---|---|
| Stars | 28,203 | 28,182 | 28,162 |
| Language | Python | Python | Python |
| Setup difficulty | moderate | easy | moderate |
| Complexity | 3/5 | 2/5 | 3/5 |
| Audience | general | developer | researcher |
Figures from each repo's GitHub metadata at analysis time.
Requires ffmpeg and libsndfile installed, a GPU is optional but provides roughly 100x faster processing than CPU.
Spleeter is a music source separation library from Deezer that takes a finished song and pulls it apart into its individual instrument tracks. Feed in an MP3 or WAV, and it can output the vocals on one file and the rest of the mix on another, or split it further into separate vocal, drums, bass, piano, and "other" tracks. This kind of unmixing used to require the original studio session files, Spleeter does it from the final stereo recording using pretrained deep learning models. Under the hood it is written in Python and uses TensorFlow, and the project ships three pretrained models out of the box: a 2-stem model (vocals and accompaniment), a 4-stem model (vocals, drums, bass, other), and a 5-stem model that also isolates piano. The 2 and 4-stem models perform well on the standard musdb benchmark, and on a GPU the separation runs roughly 100 times faster than the actual length of the audio. You can use it from the command line or import it as a Python library, install it with pip, run it inside Docker, or try it without installing anything through a hosted Google Colab notebook. It depends on ffmpeg and libsndfile for audio handling. You would reach for this when you want a karaoke version of a track, want to isolate a drum or bass line for sampling or transcription, or want to feed clean stems into another music tool. The README notes that Spleeter is already used inside professional audio software like iZotope RX 8, Steinberg SpectralLayers, Acon Digital Acoustica, VirtualDJ, and Algoriddim's NeuralMix and djayPRO apps. The code is MIT licensed, and Deezer also offers a paid Spleeter Pro version with faster processing and support.
Spleeter is an AI tool from Deezer that splits any finished song into separate instrument tracks, vocals, drums, bass, piano, using pretrained deep learning models, without needing the original studio files.
Mainly Python. The stack also includes Python, TensorFlow, ffmpeg.
Free to use for any purpose including commercial projects, as long as you keep the copyright notice.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly general.
This repo across BitVibe Labs
Verify against the repo before relying on details.