Releases: danvelope/stemkit
Release list
0.1.18
Quality settings (new)
Every upgrade is opt-in from the new Settings panel (gear icon), each with its own one-time download:
- Studio-quality vocals — a mel-band roformer vocal model (best-in-class on standard vocal separation benchmarks) replaces the demucs vocal pass for noticeably cleaner, more natural vocals. +913 MB, one time. Runs on GPU or CPU (CPU is slower).
- Cleaner instruments — fine-tuned demucs (htdemucs_ft) for drums, bass and other. +~320 MB, one time, up to 4× slower.
- Extra quality pass — separates the song twice and blends the takes for cleaner results. Up to 3× slower.
Songs already in your library keep their current sound — split them again to use the new engines.
GPU acceleration (Windows, new)
- Splits can now run on your NVIDIA GPU (CUDA) for much faster splits. Detected automatically (nvidia-smi); opt-in from Settings, with a one-time ~2.5 GB CUDA engine download.
- macOS continues to use Apple Silicon GPU acceleration automatically where available.
- GPU failures fall back safely instead of failing the split.
Hide the YouTube video (new)
A playback setting that stops streaming the YouTube video while you listen — stems always play locally, so the video was never needed for playback. Thumbnails switch to a local cache, so nothing is fetched from YouTube during playback.
Improvements
- Better audio end-to-end: stems are written as 32-bit float WAVs (full dynamic range, no peak normalization), the mix is resampled with soxr, and downloads now pick the best available audio stream.
- Hybrid separation pipeline: vocals (roformer) and instruments (demucs) are split in a single pass with combined live progress; GPU failures fall back to CPU automatically.
- Processing view opens as soon as a split starts, with elapsed time and a self-calibrating ETA; songs show how long the split took.
- Resumable engine downloads with progress bars (setup screen + Settings). Engines for enabled settings are prefetched in the background at app start, so the first split never stalls on a download.
- Faster library: stem files load in parallel so large songs no longer block the UI.
- Splits now re-run correctly when quality settings change (previously-split songs re-split on demand).
Fixed
- The CUDA engine install could silently keep the CPU build of torch — the swap is now forced and verified before splits use it.
- No accidental ~2.5 GB CUDA download on machines without an NVIDIA GPU.
- The progress bar no longer jumps backwards between separation phases.
- The quality settings modal could render with a transparent background.
Privacy
StemKit now collects optional, anonymous usage statistics (app version, OS, generic actions like "a split completed") to help improve the app. It can be turned off any time in Settings → Privacy. Song titles, links, audio and video never leave your machine, with or without it.
0.1.15
v0.1.15
Fixed
- "solver install failed (1)" on macOS — setup could pick up the system Python 3.9 (shipped with Apple's Command Line Tools) when no newer Python was installed. The separation engine installed fine on 3.9, but the solver component (yt-dlp-ejs) requires Python 3.10+, so setup failed at the last step. StemKit now requires Python 3.10–3.12 and falls back to its bundled Python 3.11 otherwise — affected users are repaired automatically on the next setup run.
- Python selection now prefers the newest compatible interpreter on the machine (3.12 > 3.11 > 3.10) instead of the first one found.
- Solver install errors are no longer silent — the actual pip error is now shown in the setup log and included in the failure message, so reports like "(1)" come with a reason.
0.1.14
Fixed macOS setup failing on newer systems (#3) — StemKit no longer picks up system Python versions newer than 3.12 (which the pinned audio engine doesn't support), falling back to its bundled Python instead. Setup now also rebuilds a broken environment from a previous failed attempt, so no manual cleanup is needed.
Thanks to @cpiprint for the fix (#4) and @joecer21 for diagnosing the root cause and the venv rebuild suggestion.
0.1.13
- Export all now includes the full original track alongside the stems
- Renamed "Export all stems" button to "Export everything"
- Removed the "synced to youtube · local stems" label; video title uses the full header width
- Fixed Windows first-run setup (PR #2, @joecer21): pip self-upgrade via python -m pip, prefer bsdtar over GNU tar, and quote paths when shelling out
0.1.12
0.1.9
v0.1.9 v0.1.9: private python runtime auto-download + STEMKIT_FORCE_RUNTIME …
0.1.8
Auto-update is here
- StemKit now checks GitHub Releases on launch and every 6 hours, downloads updates silently in the background, and shows a Restart ↻ pill in the sidebar when ready
- macOS builds now ship a zip update feed (differential updates — only changed bytes download)
- Current installs (v0.1.6+) will receive this update automatically within 6 hours or on next launch
Signed with Developer ID. First launch: System Settings → Privacy & Security → Open Anyway (one time).
0.1.6
v0.1.6 Polish player header: larger info card content, three-zone layout