Skip to content

1.0.5 — a real music player everywhere (pre-release)

Pre-release
Pre-release

Choose a tag to compare

@marthofdoom marthofdoom released this 25 Sep 22:15
· 13 commits to main since this release

Pre-release for personal testing (public releases remain on hold pending persistent auth).

Music player, on desktop, web and Android

  • Play an album, playlist or artist and the whole list becomes the queue — Play / Shuffle buttons, or double-click / tap a row to play from it.
  • Play Next / Add to Queue everywhere; Now Playing shows the full queue with jump, reorder, remove, Clear, and add-queue-to-playlist.
  • Shuffle / repeat, Previous restarts after 3s, failed tracks are skipped, the queue survives a restart.

Federation: one queue per device, owned next to the device

  • The Harmony instance that can reach a speaker/TV now runs that device's queue and auto-advances it — casting keeps going with your phone or browser closed (Chromecast's frozen position is covered by a play clock).
  • A peer's device ("via") gets the whole queue handed to that peer. Desktop, web and phone all see and control the same queue.
  • Switching output moves the queue and position.

Per surface

  • Desktop: MPRIS (media keys, GNOME/KDE media controls, lock screen), Ctrl+Space/←/→ shortcuts, click the bar for Now Playing, peers' devices in the output picker.
  • Web: Media Session, ⋯ menus for touch, keyboard shortcuts, queue survives reload.
  • Android: background playback (notification, lock screen, Bluetooth keys), mini player, device volume/seek. Fixes consecutive-track playback.

Accounts: syncing now updates the connection status immediately and reports what synced / was kept / didn't work here (and rolls back logins that don't work on this device).

Verified: 728 tests; real GTK + GStreamer run (also inside the installed Flatpak); MPRIS over D-Bus; web in headless Chromium (desktop + phone width); Android on an API 34 emulator (album auto-advance, background, media keys, restore). Not yet verified on a real WiiM, Chromecast or phone.