US 9,813,829 B2
Audio synchronization among playback devices using offset information
Timothy W. Sheen, Brighton, MA (US)
Assigned to Sonos, Inc., Santa Barbara, CA (US)
Filed by Sonos, Inc., Santa Barbara, CA (US)
Filed on Nov. 3, 2016, as Appl. No. 15/342,972.
Application 15/342,972 is a continuation of application No. 15/041,101, filed on Feb. 11, 2016, granted, now 9,538,300.
Application 15/041,101 is a continuation of application No. 14/164,971, filed on Jan. 27, 2014, granted, now 9,313,591, issued on Apr. 12, 2016.
Prior Publication US 2017/0064472 A1, Mar. 2, 2017
This patent is subject to a terminal disclaimer.
Int. Cl. H04B 3/00 (2006.01); H04R 27/00 (2006.01); H04N 21/81 (2011.01); H04R 29/00 (2006.01)
CPC H04R 27/00 (2013.01) [H04N 21/8113 (2013.01); H04R 29/007 (2013.01); H04R 29/00 (2013.01); H04R 29/001 (2013.01); H04R 2227/003 (2013.01); H04R 2227/005 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A first playback device comprising:
one or more processors; and
tangible, non-transitory computer-readable memory comprising instructions that, when executed by the one or more processors, cause the first playback device to perform functions comprising:
receiving, from a second playback device, data indicating clock information of the second playback device;
before receiving the data indicating the clock information, determining that data indicating an offset between a clock of the first playback device and a clock of the second playback device is not available in memory storage; determining an offset between a clock of the first playback device and a clock of the second playback device using the clock information of the second playback device storing, in the memory storage, data representing the offset;
receiving, from the second playback device, a first time corresponding to audio data to be played by the first playback device as part of a synchrony group with the second playback device;
retrieving, from the memory storage, the data representing the offset between the clock of the first playback device and the clock of the second playback device;
determining a second time based on (i) the first time and (ii) the retrieved data representing the offset; and
playing the audio data at the second time according to the clock of the first playback device.