Model Details
Spleeter splits a song into two finished audio files: the accompaniment (the full mix with the lead vocal removed) and the isolated vocal itself. Send one audio URL; there is nothing else to configure and no prompt. It is a purpose-built vocal remover rather than a general stem splitter, and it bills as one flat charge per track instead of per minute of audio.
## Best for - Making a karaoke or backing track by stripping the lead vocal from a song - Pulling an a cappella vocal out of a finished mix to remix or sample - Preparing a vocal and instrumental pair for a mashup, cover or DJ edit - Batch-processing a music library at a fixed, predictable cost per track
## Choose another model when - You need a full-bandwidth split: this model was trained on spectrograms up to 11 kHz, so detail above that is missing from both stems; `meta/demucs` returns 44.1 kHz stems. - You need drums, bass and other instruments separately, or one sound you can name — `meta/sam-audio/separate` isolates a target you describe in words. - You need to separate something longer than a song: a DJ set or a podcast fails here rather than being shortened. Split the audio into song-length parts first.
## Tips - Send a full-band mix with the vocal present: a solo vocal or an instrumental track has nothing to separate. - The result is an array of two URLs: index 0 is the accompaniment, index 1 is the isolated vocal. - WAV and MP3 sources both decode; the two stems always come back as WAV at the source's own sample rate.
## Limitations - Content above 11 kHz is discarded rather than attenuated, so both stems sound duller than the source on bright material. - Exactly two stems, fixed: vocal and everything else. There is no way to request a drums/bass/other split. - Verified up to a 3.5-minute track; about five minutes is the practical ceiling, and an over-long file fails the whole request — sometimes with no error message — rather than returning a shortened result. - The first call after a quiet period can take about two minutes to start; later calls return in a few seconds.
To run via the ModelRunner JavaScript client: ```js import { modelrunner } from "@modelrunner/client";
const result = await modelrunner.subscribe("deezer/spleeter", { input: { audio: "https://media.modelrunner.ai/PlbJ07n9klVvKGysT4qdy.wav", }, }); // result.output[0] -> accompaniment (instrumental), result.output[1] -> isolated vocal ```
