mirror of
https://github.com/navidrome/navidrome.git
synced 2026-10-10 19:37:08 +02:00
Jukebox playback happens entirely server-side via mpv, so the client never calls the reportPlayback endpoint that normally drives play counts and scrobbling. As a result, songs played through jukebox mode were never scrobbled and never incremented their play count. Thread the existing scrobbler.PlayTracker into the playback device and report StateStarting/StateStopped transitions at the same points a client-driven session would: on track start, on skip, on clear, and on natural end-of-track. The async track-switcher goroutine has no HTTP request of its own, so the acting user/player/client are captured from the last jukebox request and carried on the device's long-lived context for it to use. Fixes #5693 |
||
|---|---|---|
| .. | ||
| mpv | ||
| device.go | ||
| playback_suite_test.go | ||
| playbackserver.go | ||
| queue.go | ||
| queue_test.go | ||