Synchronizing operations among a plurality of independently clocked digital data processing devices
First Claim
1. A first digital data processing device included in a synchrony group comprising the first digital data processing device and a second digital data processing device, the first digital data processing device comprising:
- an interface configured to receive multimedia information for playback in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device, wherein the multimedia information is arranged as a plurality of frames, each frame including one or more samples and an indication of when to play the one or more samples in the frame in synchrony with playback of the one or more samples by each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device;
an information buffer configured to store the plurality of frames for play back by the first digital data processing device, wherein the first digital data processing device is configured to receive clock information from a source device and determine a time differential value between the received clock information and clock information associated with the first digital data processing device, the time differential value to be applied with the indication of when to play the one or more samples in each of the plurality of frames to generate an updated indication of when to play the one or more samples in each of the plurality of frames stored in the information buffer; and
an output configured to play back the one or more samples in each of the plurality of frames from the information buffer according to each frame'"'"'s updated indication of when to play the one or more samples in the frame in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device, wherein the first digital data processing device is configured to adjust, based on at least the received clock information, a number of samples that are played in a time period.
4 Assignments
0 Petitions
Accused Products
Abstract
Example systems, apparatus, and methods receive audio information including a plurality of frames from a source device, wherein each frame of the plurality of frames includes one or more audio samples and a time stamp indicating when to play the one or more audio samples of the respective frame. In an example, the time stamp is updated for each of the plurality of frames using a time differential value determined between clock information received from the source device and clock information associated with the device. The updated time stamp is stored for each of the plurality of frames, and the audio information is output based on the plurality of frames and associated updated time stamps. A number of samples per frame to be output is adjusted based on a comparison between the updated time stamp for the frame and a predicted time value for play back of the frame.
-
Citations
21 Claims
-
1. A first digital data processing device included in a synchrony group comprising the first digital data processing device and a second digital data processing device, the first digital data processing device comprising:
-
an interface configured to receive multimedia information for playback in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device, wherein the multimedia information is arranged as a plurality of frames, each frame including one or more samples and an indication of when to play the one or more samples in the frame in synchrony with playback of the one or more samples by each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device; an information buffer configured to store the plurality of frames for play back by the first digital data processing device, wherein the first digital data processing device is configured to receive clock information from a source device and determine a time differential value between the received clock information and clock information associated with the first digital data processing device, the time differential value to be applied with the indication of when to play the one or more samples in each of the plurality of frames to generate an updated indication of when to play the one or more samples in each of the plurality of frames stored in the information buffer; and an output configured to play back the one or more samples in each of the plurality of frames from the information buffer according to each frame'"'"'s updated indication of when to play the one or more samples in the frame in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device, wherein the first digital data processing device is configured to adjust, based on at least the received clock information, a number of samples that are played in a time period. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method performed by a first digital data processing device included in a synchrony group of comprising the first digital data processing device and a second digital data processing device, the method comprising:
-
receiving, via an interface of the first digital data processing device, multimedia information for playback in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device, wherein the multimedia information is arranged as a plurality of frames, and wherein each frame includes one or more samples and an indication of when to play the one or more samples in the frame in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device; storing the plurality of frames in an information buffer for play back by the first digital data processing device in synchrony with playback of the plurality of frames by each digital data processing device in the synchrony comprising the first digital data processing device and the second digital data processing device; receiving clock information from a source device; determining a time differential value between the received clock information and clock information associated with the first digital data processing device; playing back the plurality of frames in synchrony with playback of the plurality of frames by each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device via an output of the first digital data processing device, wherein playing back the plurality of frames comprises for an individual frame, (i) generating an updated indication of when to play the one or more samples in the frame based on the time differential value and the indication of when to play the one or more samples in the frame and (ii) playing back the one or more samples in the frame from the information buffer according to the updated indication in synchrony with playback of the one or more samples in the frame by each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device; and while playing back the plurality of frames via the output in synchrony with playback of the plurality of frames by each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device, adjusting a number of samples played per time period based on at least the received clock information. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. Tangible, non-transitory computer-readable media comprising instructions stored therein, wherein the instructions, when executed by one or more processors, cause a first digital data processing device to perform a method, wherein the first digital data processing device is included in a synchrony group comprising the first digital data processing device and a second digital data processing device, and wherein the method comprises:
-
receiving, via an interface of the first digital data processing device, multimedia information for the first digital data processing device to playback in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device, wherein the multimedia information is arranged as a plurality of frames, and wherein each frame includes one or more samples and an indication of when to play the one or more samples in the frame in synchrony with playback of the one or more samples by each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device; storing the plurality of frames in an information buffer for play back by the digital data processing device in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device; receiving clock information from a source device; determining a time differential value between the received clock information and clock information associated with the digital data processing device; playing back the plurality of frames in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device via an output of the first digital data processing device, wherein playing back the plurality of frames comprises for an individual frame, (i) generating an updated indication of when to play the one or more samples in the frame based on the time differential value and the indication of when to play the one or more samples in the frame and (ii) playing back the one or more samples in the frame from the information buffer according to the updated indication in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device; and while playing back the plurality of frames via the output in synchrony with each digital data processing device of the synchrony group comprising the first digital data processing device and the second digital data processing device, adjusting a number of samples played per time period based on at least the received clock information. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification