Skip to content

How to separate vocals from a song offline on a Mac

By Suraj, Unloop Studio · Updated

Short answer

Demucs, an open-source separation model, runs locally. After installing it with pip, demucs --two-stems=vocals song.mp3 creates a vocals file and a no_vocals (instrumental) file. An offline app like StemSplit wraps the same idea in a drag-and-drop window.

Using Demucs in Terminal

With Python 3 installed:

python3 -m pip install demucs
demucs --two-stems=vocals "song.mp3"
# results: separated/htdemucs/song/vocals.wav and no_vocals.wav

Things to know

The first run downloads the model. Separation is heavy — longer songs take a while on older Macs. Results are very good, but no separator is perfect on every mix.

Why offline matters

Online splitters mean uploading the track. For unreleased music or client audio, keeping everything on your own machine is safer.

FAQ

Is Demucs free?

Yes, Demucs is open source.

Do I need an internet connection?

Only to install it and download the model the first time. Separation itself runs locally.