AI Stem Splitter

Split any song into vocals, drums, bass, and other stems using Meta's HT-Demucs v4 AI model. The entire neural network runs in your browser. No uploads, no sign-up, no server. Free.

Share

AI Stem Separation Engine

This tool uses Meta's HT-Demucs v4 neural network running in your browser via ONNX Runtime Web. The model file is approximately 172 MB and downloads once. Your browser caches it for future visits. All processing happens on your device. No audio is uploaded anywhere.

WebGPU not detected (WASM fallback)Single-threaded (slower)

Drop an audio file here

Supports WAV, MP3, OGG, FLAC, AAC. Stereo input recommended. Longer files take more processing time.

All audio processing happens in your browser. No files are uploaded to any server.

How AI Stem Separation Works: Running Demucs in Your Browser

Meta AI released Demucs v4 in 2022 as an open-source machine learning model for music source separation. The Hybrid Transformer variant (HT-Demucs) achieves a Signal-to-Distortion Ratio of 9.0 dB on the MUSDB18-HQ benchmark, which was state-of-the-art for open-source models at the time of publication. This tool runs that exact model in your browser using ONNX Runtime Web, a JavaScript inference engine that executes the neural network via WebAssembly or WebGPU. No audio leaves your device. No server processes your file. The model file (approximately 172 MB) downloads once and your browser caches it for future visits.

What Is Stem Separation

A stem is an individual component of a mixed audio track. A typical pop mix contains four primary stems: vocals, drums, bass, and everything else (guitars, keyboards, synths, strings). Stem separation is the process of taking a finished, mixed song and extracting these individual components. Before AI, this was nearly impossible from a stereo file. You could use phase cancellation to approximate a vocal removal, but the result lost bass and other center-panned elements. AI models like Demucs learn to identify and isolate each source from the mixed spectrogram, producing clean stems that contain only their target instrument.

How HT-Demucs v4 Works

Demucs is a hybrid model that processes audio in two parallel paths. The time-domain path operates directly on the waveform samples. The frequency-domain path converts the audio to a spectrogram using a Short-Time Fourier Transform and processes the magnitude and phase information. Both paths use a U-Net architecture with a Transformer encoder at the bottleneck. The Transformer attention mechanism lets the model learn long-range dependencies in the audio, which improves separation quality for instruments that sustain over several seconds (like bass lines and vocal phrases). The two paths are combined at the output to produce the final separated stems.

The model processes audio in fixed 7.8-second segments (343,980 samples at 44.1 kHz). For longer files, this tool uses overlap-add chunking with a 25 percent overlap and a triangular window. Each segment is processed independently, and the overlapping regions are blended to avoid audible seams at the segment boundaries. This is the same approach described in the demucs-onnx browser documentation, which provides the ONNX export pipeline and browser integration patterns this tool is built on.

ONNX Runtime Web: Running Neural Networks in JavaScript

ONNX (Open Neural Network Exchange) is an open format for representing machine learning models. Meta trained Demucs in PyTorch, but PyTorch cannot run in a browser. The solution is to convert the PyTorch model to ONNX format, then run it using ONNX Runtime Web, a JavaScript library that Microsoft maintains. ONNX Runtime Web supports two execution backends: WebGPU and WebAssembly (WASM). WebGPU provides GPU acceleration and runs separation approximately 3 times faster than realtime on capable hardware. WASM runs on the CPU and is slower but works on every modern browser. This tool automatically detects WebGPU support and uses it when available, falling back to WASM otherwise.

Multi-threaded WASM requires SharedArrayBuffer, which browsers only enable when the page is served with specific cross-origin isolation headers (COOP and COEP). This tool sets those headers on the stem-splitter route. If your browser does not support cross-origin isolation, the tool falls back to single-threaded WASM, which is slower but functional. You can check your browser's support status in the engine status panel above.

Performance Expectations

Processing time depends on three factors: file length, hardware, and backend. On a WebGPU-enabled browser (Chrome 113+, Safari 18+, or Edge 113+ on supported GPUs), a 3-minute song processes in approximately 1 minute. On WASM with multi-threading, the same song takes 3 to 5 minutes. On single-threaded WASM, expect 10 to 20 minutes for a 3-minute song. The progress bar shows segment-by-segment progress and an estimated time remaining. Memory usage peaks at approximately 1 GB for a 3-minute file, so very long files (over 10 minutes) may fail on devices with limited RAM.

Quality: Browser Demucs vs Server Demucs

The model running in this tool is the same HT-Demucs v4 weights that researchers run on servers. The separation quality is identical because the neural network produces the same output regardless of where it runs. The difference is speed, not quality. A server with an NVIDIA A100 GPU processes a 3-minute song in under 10 seconds. Your browser takes longer because it uses consumer-grade hardware and a JavaScript inference engine. But the stems you download from this tool are the same stems you would get from running Demucs on a research server with the same model weights.

For comparison, the Vocal Remover tool on this site uses phase cancellation, which is a DSP technique with no AI. Phase cancellation produces lower quality results because it cannot distinguish between vocals and other center-panned instruments. Demucs identifies each instrument by its spectral and temporal characteristics, so it can isolate vocals even when they overlap with bass or keyboards in the frequency spectrum. If you need clean, production-quality stems, use this AI tool. If you need a quick instrumental and do not want to download a 172 MB model, the phase cancellation tool runs instantly.

What to Do with Separated Stems

Once you have your stems, you can remix, sample, or study the song. Load the vocal stem into your DAW and add reverb or delay to create a remix. Use the drum stem as a breakbeat sample in a new production. Isolate the bass line to transcribe it or learn the part. Create a karaoke backing track by muting the vocal stem and mixing the other three stems together. The Audio Trimmer can cut a specific section from a stem, and the Audio Looper can turn a drum stem into a seamless loop. If you need to pitch-shift a stem to match a different key, the Pitch Shifter handles transposition without changing tempo. And if you want to master the combined stems before release, the Online Mastering Tool applies EQ, compression, and loudness normalization for streaming platforms.

Limitations and Honest Expectations

This tool is genuinely free and runs entirely in your browser, but it has real limitations. The model download is 172 MB, which takes time on slow connections (though it only happens once). Processing is computationally heavy and will make your device run warm. Very long files (over 10 minutes) may crash the browser tab on devices with less than 8 GB of RAM. The separation quality is excellent for vocals and drums, good for bass, and acceptable for the "other" stem (which is a catch-all for everything that is not vocals, drums, or bass). Reverb tails on the vocal stem may bleed slightly into the other stems because reverb is stereo and the model cannot perfectly separate it. These are fundamental limitations of the model architecture, not of the browser implementation.

For the original Demucs research, see the Meta AI Demucs repository and the accompanying paper, "Hybrid Spectrogram and Waveform Source Separation for Dense Mixtures" (Rouard et al., 2022). For the ONNX export pipeline and browser integration patterns, see the demucs-onnx project by StemSplit. For the ONNX Runtime Web library, see the Microsoft ONNX Runtime Web documentation.

From the Blog

View All