Playback device
First Claim
1. A method performed by a first playback device, the method comprising:
- receiving, via an asynchronous data packet network, (i) clock timing information comprising at least one current time of a second playback device on the asynchronous data packet network, (ii) audio that is to be played by the first playback device, (iii) an identification of at least one task to be executed by the first playback device, wherein the at least one task comprises playing the received audio, and (iv) a particular future time at which the first playback device is to execute the at least one task;
determining a differential between a time of a local clock of the first playback device and a given one or more times of the at least one current time of the second playback device on the data packet network, based on at least the received clock timing information;
determining a time, relative to the local clock of the first playback device, at which the first playback device is to execute the at least one task, based on (i) the received particular future time at which the first playback device is to execute the at least one task and (ii) the determined differential between the time of the local clock of the first playback device and the given one or more times of the at least one current time of the second playback device on the data packet network; and
playing the received audio at the determined time, relative to the local clock of the first playback device, at which the first playback device is to execute the at least one task.
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.
908 Citations
21 Claims
-
1. A method performed by a first playback device, the method comprising:
-
receiving, via an asynchronous data packet network, (i) clock timing information comprising at least one current time of a second playback device on the asynchronous data packet network, (ii) audio that is to be played by the first playback device, (iii) an identification of at least one task to be executed by the first playback device, wherein the at least one task comprises playing the received audio, and (iv) a particular future time at which the first playback device is to execute the at least one task; determining a differential between a time of a local clock of the first playback device and a given one or more times of the at least one current time of the second playback device on the data packet network, based on at least the received clock timing information; determining a time, relative to the local clock of the first playback device, at which the first playback device is to execute the at least one task, based on (i) the received particular future time at which the first playback device is to execute the at least one task and (ii) the determined differential between the time of the local clock of the first playback device and the given one or more times of the at least one current time of the second playback device on the data packet network; and playing the received audio at the determined time, relative to the local clock of the first playback device, at which the first playback device is to execute the at least one task. - View Dependent Claims (2, 3, 4, 5, 6, 19, 20)
-
-
7. A first playback device comprising:
-
one or more processors; and tangible, non-transitory computer-readable memory comprising instructions stored therein, wherein the instructions, when executed by the one or more processors, causes the first playback device to perform functions comprising; receiving, via an asynchronous data packet network, (i) clock timing information comprising at least one current time of a second playback device on the asynchronous data packet network, (ii) audio that is to be played by the first playback device, (iii) an identification of at least one task to be executed by the first playback device, wherein the at least one task comprises playing the received audio, and (iv) a particular future time at which the first playback device is to execute the at least one task; determining a differential between a time of a local clock of the first playback device and a given one or more times of the at least one current time of the second playback device on the data packet network, based on at least the received clock timing information; determining a time, relative to the local clock of the first playback device, at which the first playback device is to execute the at least one task, based on (i) the received particular future time at which the first playback device is to execute the at least one task and (ii) the determined differential between the time of the local clock of the first playback device and the given one or more times of the at least one current time of the second playback device on the data packet network; and playing the received audio at the determined time, relative to the local clock of the first playback device, at which the first playback device is to execute the at least one task. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. Tangible, non-transitory computer-readable media comprising instructions stored therein, wherein the instructions, when executed by one or more processors, causes a first playback device to perform functions comprising:
-
receiving, via an asynchronous data packet network, (i) clock timing information comprising at least one current time of a second playback device on the asynchronous data packet network, (ii) audio that is to be played by the first playback device, (iii) an identification of at least one task to be executed by the first playback device, wherein the at least one task comprises playing the received audio, and (iv) a particular future time at which the first playback device is to execute the at least one task; determining a differential between a time of a local clock of the first playback device and a given one or more times of the at least one current time of the second playback device on the data packet network, based on at least the received clock timing information; determining a time, relative to the local clock of the first playback device, at which the first playback device is to execute the at least one task, based on (i) the received particular future time at which the first playback device is to execute the at least one task and (ii) the determined differential between the time of the local clock of the first playback device and the given one or more times of the at least one current time of the second playback device on the data packet network; and playing the received audio at the determined time, relative to the local clock of the first playback device, at which the first playback device is to execute the at least one task. - View Dependent Claims (14, 15, 16, 17, 18, 21)
-
Specification