StemVrij is a local AI-powered audio application I built to make vocal and instrumental separation more accessible, while keeping the entire processing workflow on the user’s machine.
Upload an audio file, choose one of two processing modes, and the track is split into vocals and instrumental stems. When processing is done, both stems can be explored through interactive waveforms and synchronized playback — easy to listen, compare and adjust the result right inside the app.
What it does
- AI-powered separation — vocals and instrumental, using local AI (Demucs)
- Two processing modes — Standard for a balance of quality and speed, Advanced for higher quality
- Interactive waveforms with synchronized playback of both stems
- Mixer — adjust the level of each stem and preview the mix in real time
- Export vocals, instrumental or the final mix as WAV, MP3 or FLAC
- Five languages in the interface
How it’s built
The front end is built with React, Vite and CSS; the backend uses Python and FastAPI. The separation pipeline runs on Demucs and PyTorch, with FFmpeg handling audio processing and conversion, and SQLite storing local application data.
Local first
One of the core ideas behind StemVrij: audio files never have to be uploaded to an external AI service. Everything is processed on your own computer, which gives you full control over your files — and a clear privacy advantage.
