77a4a55522
_broadcastState only set updatePosition on transitions, so the lock- screen / Wear / Android Auto scrubber jumped in chunks (the in-app bar uses positionStream and was fine). Add _positionBroadcastTimer: a 1s periodic PlaybackState re-broadcast while actively playing so updateTime/updatePosition stay fresh and external surfaces interpolate smoothly. Idempotent (driven from _broadcastState, which the tick itself calls — guarded against pile-up), cancelled when not playing and in stop(). 6a: the notification progress bar now advances since MediaItem.duration was already set. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>