-
Lead/backing vocal split, stems relocation fixes, eager model pre-download (#406)
发布于
2026-08-21 16:43:03 +00:00 | 98 次提交 在此版本后已推送到 main- Add on-demand lead/backing vocal split, fix stems relocation bugs, and eager model pre-download (#275, #403)
Lead/backing vocal split:
- New on-demand POST /api/jobs/{id}/vocal-split endpoint, running UVR-MDX-NET
Karaoke 2 (audio-separator) as a second pass over Demucs's vocals.wav - Desktop and mobile UI toggle to request the split, auto-chained once the
base separation finishes, for both foreground and background jobs - Mixer shows Lead Vocals / Backing Vocals lanes in place of Vocals once split
Stems relocation fixes (#403):
- user-data.json (library metadata) now lives inside the jobs folder so it
follows a Settings relocation instead of staying behind in Documents - The relocation endpoint's settings persist step was silently swallowing
write failures and reporting false success; it now reports persisted:
false and the Settings UI shows a clear warning instead
Desktop setup wizard:
- Demucs, beat-this, and the karaoke model now download eagerly during
first-boot setup instead of lazily on first use
Also:
- Credit audio-separator / Ultimate Vocal Remover in the README per its
license's attribution requirement, plus a license audit in docs/models.md - Add models/ to .gitignore
- ci: install build-essential so diffq (audio-separator's dependency) can compile
diffq has no prebuilt wheel for Python 3.11+ on Linux, its last release only
ever shipped cp310 wheels, so uv sync must compile it from source, which
needs gcc. Docker and the Linux desktop release build already install
build-essential for the same reason; the plain lint/test CI container never
needed it before audio-separator (#275) pulled diffq in.- chore: pin Unraid template to 0.12.0
This PR ships as v0.12.0, per the user's decision given it introduces the
new lead/backing vocal split feature.
Co-authored-by: Thales <>
下载附件