Playback device
First Claim
1. A method carried out by a computing device, the method comprising:
- operating in a first mode in which the computing device is not serving as an audio information channel device for any synchrony group;
receiving an indication that the computing device is to begin serving as an audio information channel device for a given synchrony group that comprises at least first and second zone players that are communicatively coupled with the computing device over an asynchronous local area network (LAN), wherein the computing device, the first zone player, and the second zone player each have a different respective clock time;
after receiving the indication, transitioning from the first mode to a second mode in which the computing device is configured to serve as the audio information channel device for the given synchrony group;
while operating in the second mode;
transmitting clock timing information of the computing device to at least one of the first zone player or the second zone player over the LAN, wherein the clock timing information of the computing device comprises at least one reading of the clock time of the computing device, and wherein the clock timing information of the computing device enables at least one of (i) the first zone player to determine a difference between the clock time of the first zone player and the clock time of the computing device or (ii) the second zone player to determine a difference between the clock time of the second zone player and the clock time of the computing device;
exchanging one or more synchronization signaling messages with at least one of the first zone player or the second zone player;
obtaining given audio content to be played back by the given synchrony group;
using information from the one or more synchronization signaling messages to generate playback timing information associated with the given audio content that comprises an indicator of a first future time, relative to the clock time of the computing device, at which the first and second zone players are to initiate synchronous playback of the given audio content, wherein the first future time is based on information contained in the one or more synchronization signaling messages; and
transmitting the playback timing information and audio information representing the given audio content to the first and second zone players over the LAN and thereby enabling the first and second zone players to play back the given audio content in synchrony.
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.
912 Citations
30 Claims
-
1. A method carried out by a computing device, the method comprising:
-
operating in a first mode in which the computing device is not serving as an audio information channel device for any synchrony group; receiving an indication that the computing device is to begin serving as an audio information channel device for a given synchrony group that comprises at least first and second zone players that are communicatively coupled with the computing device over an asynchronous local area network (LAN), wherein the computing device, the first zone player, and the second zone player each have a different respective clock time; after receiving the indication, transitioning from the first mode to a second mode in which the computing device is configured to serve as the audio information channel device for the given synchrony group; while operating in the second mode; transmitting clock timing information of the computing device to at least one of the first zone player or the second zone player over the LAN, wherein the clock timing information of the computing device comprises at least one reading of the clock time of the computing device, and wherein the clock timing information of the computing device enables at least one of (i) the first zone player to determine a difference between the clock time of the first zone player and the clock time of the computing device or (ii) the second zone player to determine a difference between the clock time of the second zone player and the clock time of the computing device; exchanging one or more synchronization signaling messages with at least one of the first zone player or the second zone player; obtaining given audio content to be played back by the given synchrony group; using information from the one or more synchronization signaling messages to generate playback timing information associated with the given audio content that comprises an indicator of a first future time, relative to the clock time of the computing device, at which the first and second zone players are to initiate synchronous playback of the given audio content, wherein the first future time is based on information contained in the one or more synchronization signaling messages; and transmitting the playback timing information and audio information representing the given audio content to the first and second zone players over the LAN and thereby enabling the first and second zone players to play back the given audio content in synchrony. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computing device comprising:
-
a network interface that is configured to provide an interconnection with at least one data network; a clock that is configured to provide a clock time of the computing device; at least one processor; a tangible, non-transitory computer-readable medium; and program instructions stored on the tangible, non-transitory computer-readable medium that, when executed by the at least one processor, cause the computing device to perform functions comprising; operating in a first mode in which the computing device is not serving as an audio information channel device for any synchrony group; receiving an indication that the computing device is to begin serving as an audio information channel device for a synchrony group that comprises at least first and second zone players that are communicatively coupled with the computing device over an asynchronous local area network (LAN), wherein the computing device, the first zone player, and the second zone player each have a different respective clock time; after receiving the indication, transitioning from the first mode to a second mode in which the computing device is configured to serve as the audio information channel device for the synchrony group; while operating in the second mode; transmitting clock timing information of the computing device to at least one of the first zone player or the second zone player over the LAN, wherein the clock timing information of the computing device comprises at least one reading of the clock time of the computing device, and wherein the clock timing information of the computing device enables at least one of (i) the first zone player to determine a difference between the clock time of the first zone player and the clock time of the computing device or (ii) the second zone player to determine a difference between the clock time of the second zone player and the clock time of the computing device; obtaining given audio content to be played back by the synchrony group; exchanging one or more synchronization signaling messages with at least one of the first zone player or the second zone player; using information from the one or more synchronization signaling messages to generate playback timing information associated with the given audio content that comprises an indicator of a first future time, relative to the clock time of the computing device, at which the first and second zone players are to initiate synchronous playback of the given audio content, wherein the first future time is based on information contained in the one or more synchronization signaling messages; and transmitting the playback timing information and audio information representing the given audio content to the first and second zone players over the LAN, thereby enabling the first and second zone players to play back the given audio content in synchrony. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. Tangible, non-transitory computer-readable media comprising software that, when executed, causes a computing device to perform functions comprising:
-
operating in a first mode in which the computing device is not serving as an audio information channel device for any synchrony group; receiving an indication that the computing device is to begin serving as an audio information channel device for a synchrony group that comprises at least first and second zone players that are communicatively coupled with the computing device over an asynchronous local area network (LAN), wherein the computing device, the first zone player, and the second zone player each have a different respective clock time; after receiving the indication, transitioning from the first mode to a second mode in which the computing device is configured to serve as the audio information channel device for the synchrony group; while operating in the second mode; transmitting clock timing information of the computing device to at least one of the first zone player or the second zone player over the LAN, wherein the clock timing information of the computing device comprises at least one reading of the clock time of the computing device, and wherein the clock timing information of the computing device enables at least one of (i) the first zone player to determine a difference between the clock time of the first zone player and the clock time of the computing device or (ii) the second zone player to determine a difference between the clock time of the second zone player and the clock time of the computing device; obtaining given audio content to be played back by the synchrony group; exchanging one or more synchronization signaling messages with at least one of the first zone player or the second zone player; using information from the one or more synchronization signaling messages to generate playback timing information associated with the given audio content that comprises an indicator of a first future time, relative to the clock time of the computing device, at which the first and second zone players are to initiate synchronous playback of the given audio content, wherein the first future time is based on the one or more synchronization signaling messages; and transmitting the playback timing information and audio information representing the given audio content to the first and second zone players over the LAN, thereby enabling the first and second zone players to play back the given audio content in synchrony. - View Dependent Claims (26, 27, 28, 29, 30)
-
Specification