This release adds support for user-generated content (UGC) downloads and ReplayGain volume normalization.
✨ What's New
- UGC track downloads — Download user-uploaded tracks to an
_Unofficial/folder withArtist - Title [videoId]naming (#22)- Enable with
YUBAL_DOWNLOAD_UGC=true(off by default — UGC tracks are still skipped unless enabled)
- Enable with
- ReplayGain tagging — Automatic volume normalization via rsgain for consistent playback levels (#49)
- Unmatched track routing — Tracks that don't match an album are saved to
_Unmatched/instead of being skipped (#32) - Mid-download cancellation — Cancel running downloads immediately via yt-dlp progress hooks instead of waiting for the current track to finish
- ASCII filename transliteration — Add back option to transliterate unicode filenames to ASCII via unidecode with
YUBAL_ASCII_FILENAMES=true(off by default) (#58)
🔧 Improvements
- CLI documentation — Added README with install and usage docs
_Playlists/folder sorting — RenamedPlaylists/to_Playlists/for top-sorted directory listing, to align with the introduced_Unmatched/and_Unofficial/folders.
🐛 Bug Fixes
- Fixed cookies being invalidated after being used by yt-dlp
Full Changelog: v0.4.1...v0.5.0