US 12,481,475 B2
Cloud queue synchronization
Arthur L. Coburn, IV, Lexington, MA (US); Steven Beckhardt, Boston, MA (US); and Andrew J. Schulert, Cambridge, MA (US)
Assigned to Sonos, Inc., Santa Barbara, CA (US)
Filed by Sonos, Inc., Santa Barbara, CA (US)
Filed on Mar. 9, 2020, as Appl. No. 16/812,672.
Application 16/812,672 is a continuation of application No. 16/372,743, filed on Apr. 2, 2019, granted, now 10,587,602.
Application 16/372,743 is a continuation of application No. 16/143,021, filed on Sep. 26, 2018, granted, now 10,412,073, issued on Sep. 10, 2019.
Application 16/143,021 is a continuation of application No. 15/477,988, filed on Apr. 3, 2017, granted, now 10,326,750, issued on Jun. 18, 2019.
Application 15/477,988 is a continuation of application No. 15/130,672, filed on Apr. 15, 2016, granted, now 9,648,071, issued on May 9, 2017.
Application 15/130,672 is a continuation of application No. 14/616,364, filed on Feb. 6, 2015, granted, now 9,363,255, issued on Jun. 7, 2016.
Claims priority of provisional application 62/007,906, filed on Jun. 4, 2014.
Prior Publication US 2020/0344223 A1, Oct. 29, 2020
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 17/00 (2019.01); G05B 15/02 (2006.01); G06F 3/16 (2006.01); G06F 16/44 (2019.01); G06F 16/638 (2019.01); G06F 16/951 (2019.01); G06F 21/44 (2013.01); H04H 60/80 (2008.01); H04L 9/40 (2022.01); H04L 41/22 (2022.01); H04L 65/60 (2022.01); H04L 65/61 (2022.01); H04L 65/612 (2022.01); H04L 65/65 (2022.01); H04L 65/75 (2022.01); H04L 67/10 (2022.01); H04L 67/1095 (2022.01); H04L 67/12 (2022.01); H04L 67/62 (2022.01); H04N 21/254 (2011.01); H04N 21/258 (2011.01); H04N 21/262 (2011.01); H04N 21/432 (2011.01); H04N 21/436 (2011.01); H04N 21/4627 (2011.01); H04N 21/482 (2011.01); H04N 21/6377 (2011.01); H04N 21/654 (2011.01); H04N 21/658 (2011.01); H04N 21/81 (2011.01); H04N 21/8355 (2011.01); H04N 21/845 (2011.01); H04R 27/00 (2006.01)
CPC G06F 3/165 (2013.01) [G05B 15/02 (2013.01); G06F 3/16 (2013.01); G06F 16/44 (2019.01); G06F 16/638 (2019.01); G06F 16/951 (2019.01); G06F 21/44 (2013.01); H04H 60/80 (2013.01); H04L 41/22 (2013.01); H04L 63/08 (2013.01); H04L 63/105 (2013.01); H04L 65/60 (2013.01); H04L 65/61 (2022.05); H04L 65/612 (2022.05); H04L 65/65 (2022.05); H04L 65/762 (2022.05); H04L 67/10 (2013.01); H04L 67/1095 (2013.01); H04L 67/12 (2013.01); H04L 67/62 (2022.05); H04N 21/2541 (2013.01); H04N 21/25816 (2013.01); H04N 21/26258 (2013.01); H04N 21/4325 (2013.01); H04N 21/43615 (2013.01); H04N 21/4627 (2013.01); H04N 21/4825 (2013.01); H04N 21/6377 (2013.01); H04N 21/654 (2013.01); H04N 21/658 (2013.01); H04N 21/8113 (2013.01); H04N 21/8355 (2013.01); H04N 21/8455 (2013.01); H04R 27/00 (2013.01); H04R 2227/005 (2013.01)] 22 Claims
OG exemplary drawing
 
1. A method to be performed by a system comprising a cloud computing system of a platform cloud service, the method comprising:
receiving, via a network interface of the cloud computing system, data representing a command to play back a playlist of a particular streaming audio service on a playback device of a media playback system, the playlist of media items including a first media item of the particular streaming audio service and additional media items, wherein the platform cloud service is a separate cloud service form the particular streaming audio service;
generating a cloud queue, the cloud queue associated with a cloud queue identifier that identifies the generated cloud queue, wherein the cloud queue is maintained in data storage of the cloud computing system after being generated;
adding the playlist of media items to the generated cloud queue, wherein the media items in the cloud queue comprise respective uniform resource identifiers indicating sources of the media items at one or more servers of the particular streaming audio service;
sending, via the network interface to the media playback system, first data representing instructions to queue a first window of media items from the cloud queue in a local queue of the playback device, wherein the first window of media items is a subset of media items from the cloud queue that includes the first media item, wherein the local queue is maintained in data storage on at least one playback device of the media playback system, wherein the first data indicates a first uniform resource identifier indicating a source of the first media item in the first window, and wherein the playback device of the media playback system is configured to responsively initiate streaming of the first media item in the first window from the source of the first media item at the one or more servers of the particular streaming audio service when the first window is added to the local queue;
when the playlist of media items is added to the cloud queue, causing, via the network interface, one or more control devices of the media playback system to update respective graphical representations of the cloud queue in respective control applications on the one or more control devices, wherein the graphical representations of the cloud queue comprise a listing of each media item in the cloud queue, and wherein the one or more control devices are connected via one or more networks to the playback device; and
while the playback device is playing back the cloud queue via the local queue, sending, via the network interface to the media playback system, second data representing instructions to queue a second window of media items from another portion of the cloud queue in the local queue to continue playback of the cloud queue, wherein the second data indicates a second uniform resource identifier indicating a source of a second media item in the second window, and wherein the playback device of the media playback system is configured to initiate streaming of the second media item in the second window from the source of the second media item at the one or more servers of the at least one streaming audio service after the second window is added to the local queue.