Playback device
First Claim
1. A method comprising:
- a first zone player operating as a standalone zone player that is configured to play back audio individually rather than in synchrony with another zone player, wherein the first zone player comprises a local clock that provides a clock time of the first zone player;
while operating as a standalone zone player, receiving a request to enter into a synchrony group with at least a second zone player that is communicatively coupled with the first zone player over a local area network (LAN), wherein the second zone player comprises its own respective local clock that provides a respective clock time of the second zone player;
in response to receiving the request to enter into the synchrony group, entering into the synchrony group with the second zone player and transitioning from operating as a standalone zone player to operating as a slave zone player of the synchrony group that is configured to play back audio in synchrony with the second zone player;
while operating as the slave zone player of the synchrony group;
receiving a series of clock-information messages from the second zone player over the LAN, wherein individual respective clock-information messages in the series of clock-information messages include at least one respective reading of the clock time of the local clock of the second zone player;
based on the received series of clock-information messages, regularly adjusting the clock time of the local clock of the first zone player to track that of the local clock of the second zone player;
receiving, from the second zone player over the LAN, (a) audio information for at least a first audio track and (b) playback timing information associated with the audio information for the first audio track that comprises an indicator of a first future time, relative to the clock time of the local clock of the second zone player, at which the first and second zone players are to initiate synchronous playback of the audio information for the first audio track;
buffering the audio information for the first audio track; and
when the adjusted clock time of the local clock of the first zone player reaches the first future time, initiating synchronous playback of the audio information for the first audio track with the second zone player.
3 Assignments
0 Petitions
Accused Products
Abstract
A system is described for maintaining synchrony of operations among a plurality of devices that have independent clocking arrangements. The system includes a task distribution device that distributes tasks to a synchrony group comprising a plurality of devices that are to perform the tasks distributed by the task distribution device in synchrony. The task distribution device distributes each task to the members of the synchrony group over a network. Each task is associated with a time stamp that indicates a time, relative to a clock maintained by the task distribution device, at which the members of the synchrony group are to execute the task. Each member of the synchrony group periodically obtains from the task distribution device an indication of the current time indicated by its clock, determines a time differential between the task distribution device'"'"'s clock and its respective clock and determines therefrom a time at which, according to its respective clock, the time stamp indicates that it is to execute the task.
910 Citations
30 Claims
-
1. A method comprising:
-
a first zone player operating as a standalone zone player that is configured to play back audio individually rather than in synchrony with another zone player, wherein the first zone player comprises a local clock that provides a clock time of the first zone player; while operating as a standalone zone player, receiving a request to enter into a synchrony group with at least a second zone player that is communicatively coupled with the first zone player over a local area network (LAN), wherein the second zone player comprises its own respective local clock that provides a respective clock time of the second zone player; in response to receiving the request to enter into the synchrony group, entering into the synchrony group with the second zone player and transitioning from operating as a standalone zone player to operating as a slave zone player of the synchrony group that is configured to play back audio in synchrony with the second zone player; while operating as the slave zone player of the synchrony group; receiving a series of clock-information messages from the second zone player over the LAN, wherein individual respective clock-information messages in the series of clock-information messages include at least one respective reading of the clock time of the local clock of the second zone player; based on the received series of clock-information messages, regularly adjusting the clock time of the local clock of the first zone player to track that of the local clock of the second zone player; receiving, from the second zone player over the LAN, (a) audio information for at least a first audio track and (b) playback timing information associated with the audio information for the first audio track that comprises an indicator of a first future time, relative to the clock time of the local clock of the second zone player, at which the first and second zone players are to initiate synchronous playback of the audio information for the first audio track; buffering the audio information for the first audio track; and when the adjusted clock time of the local clock of the first zone player reaches the first future time, initiating synchronous playback of the audio information for the first audio track with the second zone player. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. Tangible, non-transitory computer-readable media comprising instructions stored therein, wherein the instructions, when executed by one or more processors, cause a first zone player to perform a method comprising:
-
the first zone player operating as a standalone zone player that is configured to play back audio individually rather than in synchrony with another zone player, wherein the first zone player comprises a local clock that provides a clock time of the first zone player; while operating as a standalone zone player, receiving a request to enter into a synchrony group with at least a second zone player that is communicatively coupled with the first zone player over a local area network (LAN), wherein the second zone player comprises its own respective local clock that provides a respective clock time of the second zone player; in response to receiving the request to enter into the synchrony group, entering into the synchrony group with the second zone player and transitioning from operating as a standalone zone player to operating as a slave zone player of the synchrony group that is configured to play back audio in synchrony with the second zone player; while operating as the slave zone player of the synchrony group; receiving a series of clock-information messages from the second zone player over the LAN, wherein individual respective clock-information messages in the series of clock-information messages include at least one respective reading of the clock time of the local clock of the second zone player; based on the received series of clock-information messages, regularly adjusting the clock time of the local clock of the first zone player to track that of the local clock of the second zone player; receiving, from the second zone player over the LAN, (a) audio information for at least a first audio track and (b) playback timing information associated with the audio information for the first audio track that comprises an indicator of a first future time, relative to the clock time of the local clock of the second zone player, at which the first and second zone players are to initiate synchronous playback of the audio information for the first audio track; buffering the audio information for the first audio track; and when the adjusted clock time of the local clock of the first zone player reaches the first future time, initiating synchronous playback of the audio information for the first audio track with the second zone player. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A first zone player comprising:
-
a network interface that is configured to provide an interconnection with at least one data network; a local clock that provides a clock time of the first zone player; at least one processor; a tangible, non-transitory computer-readable medium comprising program instructions stored therein, wherein the program instructions, when executed by the at least one processor, cause the first zone player to perform functions comprising; the first zone player operating as a standalone zone player that is configured to play back audio individually rather than in synchrony with another zone player; while operating as a standalone zone player, receiving a request to enter into a synchrony group with at least a second zone player that is communicatively coupled with the first zone player over a local area network (LAN), wherein the second zone player comprises its own respective local clock that provides a respective clock time of the second zone player; in response to receiving the request to enter into the synchrony group, entering into the synchrony group with the second zone player and transitioning from operating as a standalone zone player to operating as a slave zone player of the synchrony group that is configured to play back audio in synchrony with the second zone player; while operating as the slave zone player of the synchrony group; receiving a series of clock-information messages from the second zone player over the LAN, wherein individual respective clock-information messages in the series of clock-information messages include at least one respective reading of the clock time of the local clock of the second zone player; based on the received series of clock-information messages, regularly adjusting the clock time of the local clock of the first zone player to track that of the local clock of the second zone player; receiving, from the second zone player over the LAN, (a) audio information for at least a first audio track and (b) playback timing information associated with the audio information for the first audio track that comprises an indicator of a first future time, relative to the clock time of the local clock of the second zone player, at which the first and second zone players are to initiate synchronous playback of the audio information for the first audio track; buffering the audio information for the first audio track; and when the adjusted clock time of the local clock of the first zone player reaches the first future time, initiating synchronous playback of the audio information for the first audio track with the second zone player. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
Specification