What's Changed
- ci(release): generate the notes since the previous v* tag by @chrisuthe in #335
- fix(player): recover from large errors and underruns without losing the queue by @chrisuthe in #337
- fix(player): switch output format on an active stream without a gap by @chrisuthe in #338
- fix(sync): make the time filter a pure port of the reference, and handle deep sleep by @chrisuthe in #339
- fix(network): keep the clock and the queue through network events that are not a handover by @chrisuthe in #340
- fix(protocol): report the player's real timing state by @chrisuthe in #341
- docs: bring comments, CLAUDE.md and tests in line with the code after the audit by @chrisuthe in #343
- fix(player): split multi-frame FLAC chunks, recover a failed decoder, cap the decoded queue by @chrisuthe in #345
- fix(volume): follow the spec's volume curve on the device's own volume steps by @chrisuthe in #342
- fix(playback): one policy for the output after reporting available: false by @chrisuthe in #344
- feat(tv): turn the artwork to the artist photo with the remote by @chrisuthe in #347
- fix(name): send the player name the user set, and send a new one at once by @chrisuthe in #348
- feat(welcome): name the player in the welcome dialog, before it is on the network by @chrisuthe in #349
- test: wait for the hello in PlayerNameTest by @chrisuthe in #351
- TV: a full-height side menu, and every screen usable with a remote by @chrisuthe in #350
- build: Compose 1.12 (BOM 2026.09.00) and tv-material 1.1.0 by @chrisuthe in #352
- fix(tv): focus after connecting, and Left from the welcome's buttons by @chrisuthe in #353
- chore(release): bump to 2.0.0-Beta22 (versionCode 20022) by @chrisuthe in #354
Full Changelog: v2.0.0-Beta21...v2.0.0-Beta22