com.blitzfc.qbz QBZ Hi-fi music player for Qobuz

QBZ is a native Qobuz client for Linux focused on reliable hi-res playback and desktop integration.

QBZ Contributors https://github.com/vicrodh/qbz https://github.com/vicrodh/qbz/issues https://github.com/vicrodh/qbz CC0-1.0 MIT #2b6cb0 #63b3ed com.blitzfc.qbz.desktop qbz Home and discovery view https://raw.githubusercontent.com/vicrodh/qbz/cff32e5da726719b983770c7f4c2ff52bb51e14d/packaging/flatpak/screenshots/home-discover.png Immersive cover flow mode https://raw.githubusercontent.com/vicrodh/qbz/cff32e5da726719b983770c7f4c2ff52bb51e14d/packaging/flatpak/screenshots/immersive-cover-flow.png Local library view https://raw.githubusercontent.com/vicrodh/qbz/cff32e5da726719b983770c7f4c2ff52bb51e14d/packaging/flatpak/screenshots/local-library.png

"Accolade Watch" — a polish release focused on desktop integration, visual identity and small quality-of-life fixes.

  • New matte-vinyl app icon applied across every size (Tauri, Windows Store, Android, Flatpak, tray) plus a monochrome symbolic variant for system trays
  • Window controls can now auto-detect KDE Plasma / Klassy and mirror the system decoration colors and button shape; new full-height-rounded button style added for Klassy's most common look
  • Opt-in "Match system window chrome": QBZ rounds its own corners to the detected desktop's radius (requires app restart — the window is rebuilt transparent so the corners don't show white)
  • Login screen refresh: larger logo, subtle shadow using the theme's muted color, and QBZ / Qobuz™ Player branding under the mark
  • Editor's Picks tab cleanup: removed redundant "Album of the Week" and "Qobuzissime" ribbons on cards inside their own eponymous sections
  • Playlist context menu in the sidebar now flips above the cursor when it would otherwise fall below the window
  • Sort submenu in the sidebar playlists menu no longer gets clipped by its parent dropdown
  • Genre filter popup uses its CSS max-height for collision detection so it flips above the trigger or clamps to the viewport instead of overflowing the bottom of the window
  • DAC Setup Wizard icon contrast fixed for light accent themes
  • Hardening to audio request signing (internal)

Quick-fix release: fixes tracks ending ~9 seconds early when streamed via CMAF, and improves credential security with encrypted keyring storage and XDG portal secret integration.

  • Fixed CMAF segment off-by-one: last audio segment was skipped, cutting ~9 seconds from every track
  • OAuth tokens now encrypted (AES-256-GCM) before storing in system keyring
  • Key derivation uses XDG Desktop Portal secret when available (DE-agnostic, Flatpak-safe)
  • Logout now properly clears stored credentials from keyring and file
  • Reduced log noise: device enumeration, playlist fetches, and zbus internals moved to debug level

Qobuz has been migrating their audio delivery infrastructure to encrypted segmented streaming. This was silently breaking playback for certain tracks. This release implements the new streaming pipeline end-to-end, making QBZ compatible with Qobuz's current and future audio delivery.

  • New CMAF streaming pipeline: encrypted segments fetched from Akamai CDN, decrypted on the fly, playback starts in under 1 second
  • Smart quality negotiation: requests the track's actual quality instead of always maximum, eliminating unnecessary API fallback cascades
  • ALSA progressive backoff on device busy: faster track skipping without "device busy" errors
  • Offline playback controls now work without internet connection (#173)
  • OAuth tokens stored in system keyring (GNOME Keyring, KDE Wallet) when available (#215)
  • Ghost track skip prevention: stale auto-advance commands discarded after context switch
  • Logout now stops active playback
  • Vite 8.0.5 security update (3 dev server vulnerabilities)
  • 60+ components translated across all 5 locales

About a month and a half ago, Qobuz began making changes to their authentication system. This was the reason we introduced OAuth login early on — and fortunately, doing so ahead of time meant no one was truly locked out of the app. This release simply removes direct credential login, making OAuth the sole authentication method. There is also some bugfixing for issues reported on GitHub.

We are considering requesting official API access again, and looking for ways to coordinate with the community to support this request to Qobuz — so that a more severe change in the future does not leave us out. Thank you all for the continued support for QBZ.

  • OAuth is now the only login method; username/password authentication has been removed
  • Fixed "Go to Album" and "Go to Artist" navigation failing until starting new playback (#252)
  • Fixed MPRIS metadata not populating on session restore (#240)
  • Fixed incorrect artist birth/formation location display in Artist Network (#235)
  • Added Playlists to the favorites quick access menu and titlebar dropdown (#233)
  • Added bulk "make available offline" action to track selection bar (#231)
  • System sleep is now prevented during active playback via XDG portal (#229)
  • Sensitive IDs and UUIDs are now sanitized from logs (#213)
  • F11 fullscreen toggle and ESC exit now work globally (#202)
  • Added streaming buffer progress indicator to the seekbar (#194)
  • Initial macOS support: CoreAudio device probing, deep links, rich notifications, platform-aware settings
  • Dependency updates: coreaudio-rs, notify-rust, axum, lofty, rand, souvlaki, lucide-svelte, vite

Resilience: exponential backoff retry (1s/2s/4s) with quality fallback when Qobuz servers return 504s. User preference modal for retry behavior (ask/always fallback/always skip), persisted in settings. Degraded service indicator with 5-minute auto-clear. Manual network check button. macOS port foundation (gated backends, native title bar, CI workflow). Offline mode improvements (last known profile restore, dismissible banner, network folders). WebKitGTK 2.50+ image flicker fix. Hybrid Intel+NVIDIA compositing fix. QConnect fixes for queue_version tolerance and ALSA volume control. i18n: hardcoded strings replaced in SearchView and PlaylistDetailView. Security: aws-lc-sys 0.39.0, rustls-webpki 0.103.10.

Qobuz Connect: multi-device playback with renderer and controller mode, server-authoritative queue sync, and bidirectional transport controls. Linebed 3D terrain visualizer with 4096-point FFT. Qobuz playlist follow/unfollow with native API sync. Audio settings sync overhaul fixing exclusive mode with QConnect. Volume lock for ALSA Direct hw:. HiFi Wizard real DAC sample rate detection. MuPDF 0.6 restoring booklet viewer. Offline mode button on network error screen. KWin SSD hack removed. PipeWire rate switch verification with retry. Help tooltips on bit-perfect settings. 185 commits.

Fix startup crash on Debian sid and Fedora (missing libjpeg). Fix partial cover art in AppImage. Fix track number display for compilations and box sets. Fix PipeWire bit-perfect stream match rule in Hi-Fi Wizard. Security update for quinn-proto. Test fixes for cross-distro builds.

Scene Discovery: explore artists from the same city or musical scene. Redesigned Home with 3 Discovery Tabs (Home, Editor's Picks, For You) with personalized radio stations, spotlight artist, and genre filtering. Neon visualizers (Laser, Tunnel, Comet) with album art color extraction. In-app PDF booklet viewer. Audio engine upgrade to rodio 0.22 with ALSA gapless playback. Security hardening and stability fixes.

Miniplayer window with compact and micro surfaces. OAuth browser login for new Qobuz auth flow. Window size persistence, HiDPI scaling fix, and artist image context menus.

OAuth browser authentication, window size persistence, HiDPI scaling fix for all backends, and login flow improvements.

Multi-select tracks across all views with bulk queue and playlist actions. Scroll position now scoped per item and expires after one hour.

Discover browse pages for albums and playlists, localized playlist tags, preserved Qobuz artwork on playlist copy, and UI fixes.

Maintenance release: faster Home view, playback auto-resume after settings change, playlist import improvements, and bug fixes.

Major release: genre filtering, playlist suggestions, immersive player, DAC wizard, key bindings, artist blacklist.