You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Experimental Lyrics V2: generate lyrics locally from audio with chordflask-genlyrics --analyzer qwen3. Qwen3-ASR recognizes the words and
Qwen3-ForcedAligner synchronizes them. Setup downloads the models into a
separate optional runtime; generation then works offline.
Keep Lyrics V1 (song.cho) and V2 (song.v2.cho) side by side. Desktop Lyrics
lets you choose between them when both exist, and browser export uses the
selected version. Existing valid Demucs vocals can be reused for V2 generation.
Remove a song's registered Demucs stems and its owned stem files with chordflask-maintain stems remove song.mp3. Use --dry-run to preview the
removals.
Maintenance validation and storage reports now accept a single media file.
Schema migration also supports a non-writing --dry-run preview.
Improvements
On narrow screens, the chord grid now prefers to keep the playing row in the
second visible row, retaining the preceding row for context. Short viewports
and song boundaries still prioritize keeping the playing row visible.
Analysis, Demucs and Lyrics dry-run summaries distinguish planned work from
completed work. Analysis and export commands print their output paths; export
also reports when it created missing analysis or completed only some formats.
Lyrics generation accepts --replace; --force remains an alias. Replacement
affects only the selected lyrics version. Missing-analysis messages in Lyrics
and BTC point to chordflask-analyze.
Maintenance reports flag analysis files without matching media for review.
Ambiguous media filenames, cleanup refusals and permission errors have clearer
guidance. Installation documentation clarifies which CLI helpers require a
source-installed virtual environment.
Bug Fixes
Adjusted desktop Firefox STEMS playback to avoid periodic speed and seek
corrections associated with dropouts in local testing. Initial alignment and
explicit seeking remain available.
Lyrics retries now reject explicitly conflicting options instead of silently
ignoring them in favor of saved generation settings.
Lyrics generation preserves a target created while generation is running
unless replacement was explicitly requested, and rejects symlink outputs.
Known Limitations
Lyrics V2 transcription and singing alignment are experimental and can fail
on some recordings. Unsupported alignment languages, including Thai, produce
no V2 file. Failed generation leaves existing lyrics intact.
V2 generation is CLI-only; desktop Prepare still generates V1. It needs the
external Lyrics helper and Qwen runtime, Python 3.10–3.13 (3.12 recommended),
and model downloads during setup. Python 3.14 is not supported by this setup.
CPU inference can be slow and memory intensive; CUDA validation remains
pending. Models and Torch are not bundled with the player.
Desktop Chromium-based browsers remain recommended for STEMS playback.
Firefox can still experience audible dropouts. Narrow layouts remain
Grid-only, without Lyrics or Prepare controls.
A single-media storage report covers direct .chordflask artifacts and the
song's journal; it excludes Demucs stem directories and adjacent lyrics files.