Open Source
Explore the latest AI open-source projects from GitHub and HuggingFace.
Explore the latest AI open-source projects from GitHub and HuggingFace.
StemDeck is a desktop application that splits a song into its component stems — vocals, drums, bass, guitar, piano, and everything else — entirely on your own machine. Released in May 2026, it has reached about 1,950 stars and 197 forks, with commits landing as recently as this week. The pitch on the README is four words long and does most of the work: "Free, local stem separation. No account. No upload. No subscription." ## What It Actually Does Drop an MP3, WAV, or FLAC onto the import bar, or paste a YouTube URL, and StemDeck runs the audio through Demucs `htdemucs_6s` — Meta AI's open-source six-stem separation network — then loads the results into a DAW-style multitrack mixer. The mixer is the part that distinguishes StemDeck from a command-line Demucs wrapper. Each stem gets its own lane with a volume fader, mute, solo, and a "monitor" solo-only mode, plus a live VU meter driven by post-gain RMS through Web Audio analysers with peak hold and slow falloff. Waveforms render on `<canvas>` using min/max sample rendering with shared normalization across stems, so lanes stay visually aligned. You can zoom in and out or fit the whole track, drag a loop region on the ruler, and follow a gold playhead across every lane at once. Stem subset extraction is handled through chips: click to choose which stems to keep, where clicking from "all selected" snaps to "only this one" and subsequent clicks add or remove. When you select a subset, StemDeck generates a seventh lane containing the complement — the full song minus your selection — which is the standard A/B reference a musician actually wants when learning a part. Export gives you individual stems or a single `mix.wav` of just the selected ones, summed via FFmpeg `amix`. ## Analysis and Job Handling Alongside separation, StemDeck runs song analysis: BPM via the librosa beat tracker, key and scale with confidence scores using Albrecht-Shanahan profiles, integrated loudness in LUFS to ITU-R BS.1770 via pyloudnorm, and sample peak in dBFS. Jobs are cancellable mid-pipeline. Hitting cancel terminates the active subprocess immediately, deletes the partial job directory, and returns the app to ready — a small detail that matters a great deal when a CPU-only separation run is going to take a while and you have changed your mind. A library panel provides folder-based organisation, drag-and-drop, search, and a trash. ## Architecture The backend is Python 3.12 managed with uv, serving REST and Server-Sent Events through FastAPI. Demucs handles separation, yt-dlp fetches YouTube audio, FFmpeg does transcoding and mixing, and librosa and pyloudnorm cover analysis. Torch device selection is automatic — CUDA on NVIDIA, MPS on Apple Silicon, CPU fallback otherwise. The desktop shells for macOS and Windows are Tauri v2, Rust with WKWebView and WebView2 respectively. The frontend is notable for what it lacks: vanilla JavaScript with the Web Audio API, no framework and no build step. For an audio tool where latency in the UI is immediately audible as sluggishness, that is a defensible choice rather than an omission. Distribution is pre-built. macOS gets separate Apple Silicon (MPS) and Intel (CPU) DMGs; Windows gets a CPU zip at roughly 700 MB and an NVIDIA CUDA zip at roughly 1.6 GB. First launch downloads the Python runtime, FFmpeg, and the ~170 MB Demucs model, then caches them. There is also a plain web-server mode for macOS, Linux, or Windows with Python 3.12 and FFmpeg on PATH. ## An Unusually Honest README The repository includes a comparison table against Moises and LALAL.AI that argues, item by item, where the commercial products win: better proprietary models, up to ten stems instead of six, speed independent of your hardware, batch processing, mobile apps, and extras like pitch shift, chord detection, lyrics, and click track. Its own column concedes "functional, hobby-grade UI." The stated conclusion is that if you need speed, quality, mobile access, or musician tooling, the paid products are worth the money — and StemDeck is for people who want stems for personal study, prefer keeping audio private, or want something local with no strings attached. Self-assessment that specific is rare enough to be worth noting as a signal about the maintainers. The project is also explicit that it is a stem separation tool and not a downloader, does not store or redistribute downloaded content, and frames YouTube support as a convenience for material you have the right to process. ## Pros and Cons On the strengths: audio never leaves the machine, which is the entire argument for anyone working with unreleased material. There is no account, no credit system, and no subscription. Apache 2.0 licensing with pre-built installers means non-technical musicians can actually use it. The mixer, loop, VU metering, and complement-track features go well past a thin Demucs GUI. Analysis output — BPM, key, LUFS — covers what you would otherwise open a separate tool for. And CI runs on GitHub Actions with tagged releases. The limits are equally clear. Separation quality is bounded by `htdemucs_6s`, which is open but no longer state of the art against continuously updated commercial models. Six stems, not ten. CPU-only separation is slow, and the Intel Mac and base Windows builds are CPU-only. One job at a time, no batch mode. No mobile app. First launch pulls roughly 500 MB of Python runtime plus the model, so it is not a light install. macOS builds are unsigned and trip Gatekeeper, requiring a right-click-Open or an `xattr` command. And with 197 forks against just 5 open issues, the project is small enough that its bus factor is worth considering before depending on it. ## Outlook Stem separation has largely migrated to subscription web services, which is convenient until you are working with material you cannot upload. StemDeck is part of a broader 2026 pattern of local-first rebuilds of cloud AI features, where the model quality gap is accepted in exchange for privacy, cost, and offline operation. Because separation quality is inherited from Demucs rather than trained in-house, the project's trajectory is tied to the open-source separation research it wraps — a stronger open model would upgrade StemDeck for free, and the maintainers would be sensible to keep the model layer swappable. ## Conclusion StemDeck suits musicians, producers, and hobbyists who want stems for practice, transcription, or remixing and would rather not upload their audio or pay per track. The honest comparison table means you can decide before installing whether the six-stem Demucs ceiling is enough for your work. Anyone who needs top-tier separation quality, batch throughput, or mobile access should stay with the commercial services — the README says so itself.