v0.9.0 #63
rzru
announced in
Announcements
v0.9.0
#63
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Features
docker/Dockerfileanddocker/compose.yamlbuild theserverbinary (with the React bundle embedded) into a container that runs without the systemd/Caddy/Avahi installer. The same Dockerfile produces both a CPU image (debian:bookworm-slim) and a CUDA/GPU image (via--build-arg RUNTIME_BASE=nvidia/cuda:...plus the NVIDIA Container Toolkit). The ML toolchain still bootstraps on first launch into the mounted/datavolume, so the image stays small and dependencies persist across recreates. The data folder is fixed to/data(the setup wizard skips the data-folder step) and the music library follows a/songsconvention via a newNIGHTINGALE_LIBRARY_PATHenv var (defaulted in the image) — mount your music at/songsand Nightingale pins a folder source there on startup and hides the in-app source pickers, so nothing needs typing in the browser. Mic scoring still needs a TLS reverse proxy for a secure context. See docs/docker.yue) lyric support — Cantonese now joins Japanese, Mandarin, and Korean as a first-class CJK language. It rides the same per-character forced-alignment path as Mandarin (reusing the Chinese wav2vec2 model and jieba tokenization, since Cantonese is written in the same Han characters), works with the Qwen alignment backend, and shows Jyutping romanized readings above each token. The per-song language override now lists Mandarin and Cantonese separately (the former "Chinese" label). Existing installs should re-run setup so the new Cantonese romanization dependency is installed.forced_alignC++/CUDA kernel instead of WhisperX's pure-Python Viterbi. It computes each word's start/end points with a different algorithm, and is much faster on CUDA GPUs and Apple Silicon (where WhisperX alignment runs on the CPU). It also speeds up LRCLIB lyrics alignment and automatically falls back to WhisperX on error. Defaults to WhisperX, so existing behavior is unchanged unless you opt in.Improvements
Fixes
ring-offsetthat got clipped by the scroll containers) and the number pickers have room for the ring.This discussion was created from the release v0.9.0.
Beta Was this translation helpful? Give feedback.
All reactions