Drop in a song. Get every instrument on its own track. Practice with them.
Runs on your own computer: no account, no subscription, and your audio is not uploaded.
Download · What you can do · Honest comparison · We Recommend · For developers
StemDeck splits a song into up to six stems, vocals, drums, bass, guitar, piano and other, and opens them in a studio where you can mute, solo, slow down, loop, change the key and play along with a click. Drop in an audio file or paste a YouTube or SoundCloud link. Separation runs on your own machine, and StemDeck does not upload your audio.
A separation tool, not a downloader. StemDeck is for processing audio you have the right to use. What you import, and the stems made from it, are saved in your library folder on the machine that runs StemDeck; StemDeck does not upload or share them. See the Disclaimer.
Each link downloads the latest release. Release notes · Every version
| Platform | NVIDIA or Apple Silicon | Everything else |
|---|---|---|
| NVIDIA GPU | No NVIDIA GPU | |
| Apple Silicon (M1 and later) | Intel Mac | |
| NVIDIA GPU | No NVIDIA GPU |
Docker / Unraid:
ghcr.io/stemdeckapp/stemdeck:latest. It runs on the CPU as it is; add --runtime=nvidia to use an NVIDIA GPU. On Unraid, search "StemDeck" in Apps.
What's new in 0.20.0
- Guide. A new button in the left rail turns the studio into its own manual: point at anything to see what it does, and every number in the song facts says what it measures.
- The Trash. A count on its icon, hold a song for a second to bring it back, and pick several at once with Ctrl or Shift.
- Deleting a song while it extracts stops it, and keeps its files until you empty the Trash.
- Imports stay in the background: the song you have open stays open.
- We Recommend welcomes Adrianna Claro, and cards can now link to Spotify and Apple Music.
- Portable Windows installs in a folder they cannot write to now say so clearly.
All of it, with credits to the people who reported each problem, is in the release notes.
Installing, per platform
Windows and Linux. Unzip, then run StemDeck.exe (Windows) or StemDeck (Linux). No installer and nothing else to install. Put the folder somewhere you can write to, such as C:\StemDeck: a portable StemDeck keeps its runtime, models and settings in a data folder beside it, so it cannot run from Program Files. The first launch downloads FFmpeg and the separation model, and on an NVIDIA card sets up GPU support; later launches start in seconds.
macOS. Open the DMG and drag StemDeck to Applications. StemDeck is not code-signed yet, so clear the quarantine flag once, or macOS will say the app is damaged:
xattr -dr com.apple.quarantine /Applications/StemDeck.appThe first launch downloads the runtime and the model. Apple Silicon separates on its built-in GPU.
Docker and Unraid. See Build from source for the docker run line, GPU passthrough and the Unraid volume mapping.
Updates. The desktop app tells you when a new version is out and installs it for you.
- Up to six stems with Meta's open Demucs model: vocals, drums, bass, guitar, piano and other.
- Lead and backing vocals as separate lanes, on demand (not on Intel Macs).
- Files or links: MP3, WAV, FLAC, OGG, Opus, M4A and MP4, or a YouTube or SoundCloud link.
- Search without leaving the app: YouTube songs and playlists, and SoundCloud, with a preview.
- Pick only what you need before you extract.
- Whole YouTube playlists go into an import queue and run one after another.
- Mute or solo any part, and set each one's volume.
- Slow it down to half speed, or anywhere from 0.50x to 0.99x, without changing the pitch.
- Loop the hard part, by dragging across the waveform.
- Change the key, of the whole song or of one part.
- Play with a click that follows the song, with a count-in, any beats per bar and groupings such as 3+2+2.
- Fix the beat grid when the click drifts: move, add or remove beats and mark the bar lines.
- Key, tempo and loudness, found for you.
- Sections such as verse, chorus and solo, detected for you (experimental) or marked by hand.
- Synced lyrics from LRCLIB, with timing you can fix by tapping along. With an NVIDIA GPU, StemDeck can also write them down from the vocals when none are found.
- Song and artist details from MusicBrainz, Wikipedia and, optionally, Discogs.
- Export what you hear as one file, every part as a
.zip, only the looped part, or, when the song came with a video, a video with the original picture. Add the click or a count-in if you like. - Drag a stem or a loop from the desktop app straight into your other music software.
- A library with colored folders, tags you can search by (
#tag), favorites, and a Trash that only deletes when you empty it.
Click Guide in the left rail and point at anything. Every button, lane control and number says what it does, in plain words. While Guide is on, clicks explain instead of acting, so nothing happens by accident.
Turn on Make StemDeck available on your network in Settings and scan the QR code. Your phone opens your library and mixer over your own Wi-Fi, with speed and key controls. No app store, no cloud.
Windows, Linux and macOS · Docker and Unraid · 11 languages
English · Deutsch · Español · Français · Bahasa Indonesia · 日本語 · 한국어 · Polski · Português (Brasil) · Português (Portugal) · 简体中文
StemDeck is not trying to beat the commercial stem-separation services. It covers the core well and stops there. This table is here so you can choose knowingly rather than find the gaps later.
| StemDeck | Moises, LALAL.AI and similar | |
|---|---|---|
| Price | Free and open source | Usually freemium, with credits or a subscription for regular use |
| Where it runs | On your own machine | Usually in the cloud, so your audio is uploaded |
| Account | None | Usually required |
| Internet | For links, the first model download, update checks, and song details and lyrics | Usually needed to process audio |
| Privacy | Your audio is not uploaded; song names are looked up for details and lyrics | Processed on their servers, under their own retention policy |
| Separation model | Demucs htdemucs_6s, open source from Meta |
Their own models, which may give better results |
| Stems | 6, plus lead and backing vocals | Varies; some offer more instruments |
| Speed | Depends on your hardware: fast on a GPU, slow on a CPU | Fast on any hardware |
| Many songs at once | An import queue and whole playlists, run one after another | Varies by service and plan |
| Phone | Your phone opens StemDeck over your own Wi-Fi; no app store app | Some offer mobile apps |
| Practice tools | Speed, key change, loops, click track with count-in, synced lyrics; no chord detection | Varies by product; often chords and more |
| Polish | A one-person open-source project | Polished, production-grade apps |
| Source code | Open source, forkable, self-hostable | Closed |
If you need the best quality, speed on any machine, or a store-bought phone app, the commercial products are worth the money. If you want stems for practice and study, keep your audio private, and like software with no strings attached, StemDeck is enough.
StemDeck is free and does not accept any money, sponsorship, or funding from anyone listed below. I share these makers and artists and communities purely for the joy of pointing you toward wonderful people doing beautiful work. Go meet them ❤️
| Category | Name | What they do | Link |
|---|---|---|---|
| Artists & Creators | Adrianna Claro | Soul and Contemporary R&B Singer, Songwriter and Composer | Spotify · Apple Music |
| Artists & Creators | Analog4Lyfe | Analog gear specialist | @analog4lyfe |
| Artists & Creators | Dead röses | Cork-based punk rock band | @dead_rosesband |
| Artists & Creators | Joao Gaspar | Producer, film scorer, touring/session musician | @jay_glaspar |
| Artists & Creators | Killah Trakz | Industry Secret Villain and Media Influencer | @killahtrakz · Spotify · Apple Music |
| Artists & Creators | More Notes Less Talk | Gear-focused creative project with a raw, tape-recorded identity | @morenoteslesstalk |
| Artists & Creators | NIHIL | Modern alternative metal from Argentina. Fueled by emotionally charged vocals, anger and emptiness | @somosnihil · Spotify |
| Instrument Builders & Repair | Dlima Guitars | Custom guitars and basses | @dlimaguitars |
| Instrument Builders & Repair | Kris Luthier | Instrument repair and restoration | @krisluthier |
| Instrument Builders & Repair | Lisbon Guitar Works | Handmade guitars in Lisbon | dlimaguitars.com |
| Media & Community | Not Another Audio Podcast | Audio, music and tech industry podcast by working professionals | Libsyn |
| Media & Community | r/bass | Bass-player community | r/Bass |
| Media & Community | slashCAM | Camera, video, and post-production media | @slashcam.de |
| Music & Karaoke Technology | Beltr | Local, subscription-free karaoke software | beltr.app |
| Music & Karaoke Technology | Seratone | TV-based karaoke system | seratone.audio |
| Music Gear | Empress Effects | Boutique effects pedals | empresseffects.com |
| Music Gear | Thomann | Large music-equipment retailer | @thomann.music |
| Writers & Storytellers | Alexandre Borges | Portuguese writer, screenwriter, and cultural commentator | Books & author profile |
| Page | What it covers |
|---|---|
| Build from source | The macOS app, a web server on any platform, Docker and Unraid |
| Configuration | Environment variables, and serving other devices over https |
| HTTP API | The endpoints the web app uses |
| Troubleshooting | Common problems, and what lives where on disk |
| Model licenses | Where each machine-learning model's license comes from |
Built with
StemDeck is built on Python 3.12 managed via uv, with a FastAPI backend serving REST and Server-Sent Events. Stem separation uses Demucs (htdemucs_6s), Meta AI's open-source 6-stem neural network. The optional on-demand lead/backing vocal split runs the UVR-MDX-NET Karaoke 2 model via audio-separator, trained as part of the Ultimate Vocal Remover project by Anjok07. YouTube audio is fetched via yt-dlp; transcoding and mixing use FFmpeg. BPM detection and key analysis run on librosa; loudness measurement uses pyloudnorm (ITU-R BS.1770). The macOS and Windows desktop shells are Tauri v2 (Rust/WKWebView on macOS, Rust/WebView2 on Windows). The frontend is vanilla JS with the Web Audio API, no framework and no build step; waveforms are rendered on <canvas> using min/max sample rendering.
Thanks to the creators and maintainers of all the open-source libraries that make StemDeck possible.
StemDeck is a local audio stem separation tool intended for personal study, research, and experimentation. It is not a downloading service. Audio you import, and the stems made from it, are saved only in the library folder on the machine that runs StemDeck, and StemDeck does not upload, share or redistribute them. To find song details and lyrics it sends the song's name to the services named in its Settings and, only if you add an AcoustID key, an audio fingerprint; it does not send the audio itself.
YouTube and SoundCloud link support is provided via yt-dlp as a convenience. Automated downloading may violate YouTube's Terms of Service. You, the user, are solely responsible for ensuring you have the right to process any audio you submit, complying with the terms of service of any site you download from, and respecting the copyright of the material you work with.
You are also responsible for following the licenses of the underlying tools this project depends on (yt-dlp, Demucs, FFmpeg, PyTorch, and others listed in pyproject.toml).
The author(s) of StemDeck provide this software "as is", without warranty of any kind, and accept no responsibility or liability for how it is used.
StemDeck is Apache-2.0.
Every download ships a THIRD_PARTY_NOTICES.txt and a licenses/ folder. licenses/INDEX.txt lists each packaged Python dependency with its version and license, and each one's full license text sits beside it. That inventory is generated from the packaged interpreter at build time, so it describes what actually shipped rather than what was expected to.
FFmpeg is a GPL build. StemDeck downloads it and runs it as a separate executable, so it does not change StemDeck's own license, and THIRD_PARTY_NOTICES.txt carries the written offer of source for the exact build your platform receives.
Questions, ideas and show-and-tell are all welcome.
Issues, feature suggestions and pull requests are welcome. See the open issues for what is planned, and Build from source to run it yourself.
