Vocal remover

Drop a song. A trained model (13 MB, downloaded once) takes the voice out: save the karaoke track or the vocals alone.

Drop a song here
or click to choose, or paste with Ctrl+V

Nothing is uploaded. Everything runs in this tab with @audio/neural-separate and @audio/vocals.

Karaoke tracks without uploading your music

Drop a song and a trained separation model, run by @audio/neural-separate on ONNX Runtime Web, estimates the voice in it. Save the song without it as a karaoke or instrumental track, or the voice alone as an a cappella, as MP3, WAV, FLAC, OGG, Opus or AAC. The model runs on the graphics card where the browser has WebGPU and on the CPU where not. For drums, bass and the rest as separate tracks, use the stem splitter.

Two models and a classic

The SDR figures are medians over the 50 MUSDB18 test previews, by BSSEval v4: the higher, the less of the music in the vocals and of the vocals in the music.

Tips

References

Questions

How does it remove the vocals?

A trained source separation model listens to the song and estimates the voice in it; the karaoke track is the song less that voice, so the instruments are left as they were. Two models run in the page: SCNet, a 13 MB download, and Mel-Band RoFormer, 466 MB, the cleanest. The third method, mid/side, cancels whatever is panned to the center: instant and download-free, but it takes centered bass and kick with the voice and leaves wide reverb behind.

Which method should I pick?

SCNet for most songs: a small download, and with WebGPU on an Apple M4 Max about a third of the song's length. Mel-Band RoFormer when the vocals must be as clean as possible and the computer has a capable graphics card: on the 50 MUSDB18 test previews its vocals score 12.08 dB SDR against SCNet's 9.88. Mid/side when you need a result instantly or cannot download.

How long does it take?

In Chromium on an Apple M4 Max, SCNet took 73 seconds for a 4-minute song on the GPU (WebGPU) and 1.7 times the song's length on one CPU thread; Mel-Band RoFormer took 9 seconds for 30 seconds of audio on the GPU. The status line shows the time left once the first part is done. Remove and isolate reuse one separation, so switching between them is instant.

Does it work on mono files?

With a trained model, yes: it hears mono as stereo and gives mono back. Mid/side needs a stereo image; a mono file has no sides to keep.

Why can I still hear some vocal?

No model separates perfectly. Reverb tails, harmonies and doubled backing vocals can stay in the karaoke track, and a sung note that sounds like an instrument can go either way. Mel-Band RoFormer leaves the least. With mid/side, everything panned off center stays.

Is my song uploaded?

No. The song is decoded, separated and encoded in this tab. The model's weights download from huggingface.co once and stay in the browser's cache (a private window does not keep Mel-Band RoFormer's 466 MB: there it downloads each time); ONNX Runtime loads from jsDelivr.