This release adds 3 notable features for engineering teams evaluating rollout.
Published 1mo
Dashboards & Home Pages
✓ No known CVEs patched
✓ No known CVEs patched in this version
Summary
AI summaryBroad release touches Highlights, Known limitations, Setup, and CI / quality.
Full changelog
First public alpha of StemDeck. Local, single-user audio stem
separation with a DAW-style mixer.
Highlights
- 6-stem separation via Demucs
htdemucs_6s. Auto-selects CUDA →
MPS → CPU; ~3-5× speedup on Apple Silicon over CPU. - DAW-style waveform editor with min/max rendering, zoom, loop
region drag, gold playhead, and stem-aligned lanes. - Per-stem mixer: volume fader, mute, solo, monitor (solo-only),
with state synced between mixer and stems sidebar. - Stem subset extraction: pick which stems to keep on import. The
studio surfaces a 7th "Original" lane (full song minus selection)
for A/B reference, plus a downloadable summedmix.wav. - Live VU per stem: post-gain RMS via Web Audio with peak hold +
slow falloff. - Song analysis in the now-playing card: BPM (librosa beat
tracker), key + scale + confidence (Albrecht-Shanahan), integrated
LUFS (BS.1770 via pyloudnorm), sample peak in dBFS. - Cancellable jobs at any pipeline stage (download, Demucs,
ffmpeg amix). Active subprocess is terminated and the partial job
dir is cleaned up.
Setup
- macOS / Linux:
git clone … && ./run.sh setup && ./run.sh start.
Thesetupsubcommand installs ffmpeg + uv via Homebrew or apt and
runsuv sync. - Docker:
docker compose -f build/docker-compose.yml up --build.
No GPU on macOS Docker; Apple Silicon users should prefer the
native install.
CI / quality
- Woodpecker pipeline runs lint (ruff), unit tests (pytest), Python
SAST (bandit), dependency CVE audit (pip-audit), and filesystem
security scan (trivy fs + trivy config). No build/publish. - Container hardening: non-root
appuser in the runtime image.
Known limitations
- Local-only / single-user. Not designed for multi-tenant hosting.
- Single concurrent pipeline (
asyncio.Semaphore(1)). Multiple jobs
queue rather than running in parallel. - yt-dlp YouTube downloads are subject to YouTube ToS. See the
Disclaimer in the README; usage is your responsibility. - Browser memory grows on long videos because each stem is decoded
into a Web Audio buffer for the overview waveform.
Thanks
Demucs (htdemucs_6s), wavesurfer.js, ffmpeg, yt-dlp, librosa,
pyloudnorm — this project is glue around their work.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About stemdeckapp/stemdeck
All releases →Related context
Related tools
Earlier breaking changes
- v0.6.0-alpha.1 Moves library and stems storage from `~/Library/Application Support/` to `~/Documents/StemDeck/`.
Beta — feedback welcome: [email protected]