📦 Nightly Release
Changes since 2.9.0.dev2026052406
🚀 Features and enhancements
- Add variable playback speed for audiobooks and podcasts (by @OzGav in #3939)
- AudioSource follow-up (by @marcelveldt in #3964)
- Use passthrough PCM format for realtime AudioSource items (by @marcelveldt in #3969)
🐛 Bugfixes
- Fix invalid imageproxy size on PlayerMedia URLs (by @marcelveldt in #3966)
- Prevent server crash on malformed player config entries (by @marcelveldt in #3967)
🎨 Frontend Changes
- AudioSource follow-up: treat as in-queue infinite stream (by @marcelveldt in #1793)
- Use PlayerQueue.is_dynamic directly (by @dmoo500 in #1773)
- Add audio-analysis page with coverage information to system-> settings (by @chrisuthe in #1783)
- Add sidebar shortcuts for playlists, artists, albums, tracks, radios, podcasts and audiobooks (by @dmoo500 in #1780)
- Add support for variable playback speed (by @OzGav in #1787)
- Hide group count badge on standalone players when not synced (by @KealanAU in #1790)
🧰 Maintenance and dependency bumps
5 changes
- Add DTZ006 mypy rule (by @OzGav in #3525)
- Use Protocol-bounded TypeVar for @use_cache decorator (by @jdaberkow in #3965)
- ⬆️ Update music-assistant-frontend to 2.17.164 (by @music-assistant-machine in #3968)
- audiobookshelf: use from_utc_timestamp helper for ms-epoch conversions (by @OzGav in #3970)
- ⬆️ Update music-assistant-models to 1.1.125 (by @music-assistant-machine in #3973)
🙇 Thanks to our contributors
Special thanks to the following contributors who helped with this release:
@KealanAU, @OzGav, @chrisuthe, @dmoo500, @jdaberkow, @marcelveldt