Bugzilla – Bug 13814
Implement synchronized unpause
Last modified: 2011-09-09 02:19:42 UTC
Currently, track start is synchronized (for mulyiple, synchronized players) but unpause is not. See also bug 13813 the work for which should be cordinated with this.
Update hours
== Auto-comment from SVN commit #9503 to the jive repo by ayoung == == http://svn.slimdevices.com/jive?view=revision&revision=9503 == bug 13814: Implement synchronized unpause Improve accuracy of timed start and resume by delaying evaluation of delay interval until where it is used in the output thread/process.
== Auto-comment from SVN commit #33374 to the slim repo by ayoung == == http://svn.slimdevices.com/slim?view=revision&revision=33374 == Fixed bug 13814: Implement synchronized unpause Refactor Player classes resume() method out of Squeezebox.pm and make it take a start-at-time parameter. Implement enhanced resume() method for Squeezebox2 (covers all SB2 and later players), SqueezeSlave and Squeezebox1 classes. This is still only best-effort for SqueezeSlave and Squeezebox1. Calculate start-at-time parameter for each player in StreamingController::_Resume() based on the latest status which should indicate exactly when the player actually paused (which will likely be different for each player). Note that SqueezePlay (Radio, Touch) revision r9503 or above is required for these players to obey these timed resume instructions sufficiently accurately. Increase default syncStartDelay to 200ms as 100ms really was not sufficient in most cases. Probably should be larger for SN. Ensure any resync will not happen until at least 2s after resume to ensure that up-to-date status has been received. This would need to be increased if the player STAT interval was increased above 1s (see below). Calculate Squeezebox2::songElapsedSeconds() & SqueezeSlave::songElapsedSeconds() using status data, and adjusting for the time of the report if playing. This means that the paused-at time (resumeTime) is more accurate. Note that Client::songElapsedSeconds() is no longer maintained as a state variable. This would allow the STAT interval for a playing player to be increased above its current 1s. PLAYPOINT_RECENT_THRESHOLD and manipulation of nextCheckSyncTime might need to be adjusted in this case.
== Auto-comment from SVN commit #33376 to the slim repo by ayoung == == http://svn.slimdevices.com/slim?view=revision&revision=33376 == bug 13814: Implement synchronized unpause Remove debug trace.