IP Library Granted Patent US 12,498,848
Granted Patent B2
US 12,498,848 · App. 19/025,212 · Granted Dec 16, 2025

Continuous playback queue

Inventors: Keith Corbin (Boston, MA); Steven Beckhardt (Lexington, MA); Arthur L. Coburn, IV (Boston, MA)
Assignee: Sonos, Inc.
G06F3/04842H04N21/26258H04N21/4622H04N21/4825H04N21/8113G06F3/0482G06F2203/04803H04N21/43615
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,498,848
App. No.
19/025,212
Granted
Dec 16, 2025
Kind
B2
Abstract

Embodiments are described herein that involve a media playback system playing back a playback queue according to a continuous-playback mode. In one aspect, a playback device is provided that includes a network interface, one or more media processing components, and a non-transitory computer-readable medium with program instructions stored thereon. The program instructions are executable by at least one processor to cause the media playback device to: add one or more items to a playback queue of the media playback device, where the one or more items include a continuous-playback item including at least one media item, play back the playback queue according to a continuous-playback mode, where playing back the playback queue according to the continuous-playback mode involves: detecting a continuous-playback trigger, and based on the detected continuous-playback trigger, adding at least one additional media item to the continuous-playback item.

Claims (66)

1 . A computing device comprising:

at least one network interface;

at least one processor;

at least one non-transitory computer-readable medium comprising program instructions that are executable by the at least one processor such that the computing device is configured to:

receive, via the network interface, data representing an instruction to add a first container to a playback queue associated with a playback device, wherein the first container is one of (a) an album or (b) a playlist, wherein the first container comprises first audio tracks, and wherein the playback queue is maintained in data storage that is remote from the playback device;

after receipt of the data representing the instruction, add the first container to the playback queue, wherein after addition of the playlist to the playback queue, the playback queue comprises the first audio tracks arranged in a particular order within the playback queue;

cause, via the network interface, the playback device to start playback of the playback queue;

when a continuous playback mode is enabled, transition playback to the continuous playback mode when the playback of the first container finishes, wherein the program instructions that are executable by the at least one processor such that the computing device is configured to transition playback to the continuous playback mode comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

generate a second container comprising a pre-determined number of second audio tracks, wherein the second audio tracks are based on the first audio tracks; and

start playback of the second container on the playback device; and

during playback in the continuous playback mode, repeatedly add additional second audio tracks to the second container to maintain a threshold number of audio tracks.

2 . The computing device of claim 1 , wherein the first audio tracks are streamed from a first audio source during playback of the playback queue, and wherein the program instructions that are executable by the at least one processor such that the computing device is configured to generate the second container comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

identify the second audio tracks from at least one second audio source that is different from the first audio source.

3 . The computing device of claim 2 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to identify the second audio tracks from the at least one second audio source that is different from the first audio source comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

identify a first portion of the second audio tracks from a local library that is accessible via a local area network to the playback device; and

identify a second portion of the second audio tracks from streaming audio that is accessible via a wide area network to the playback device.

4 . The computing device of claim 2 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to identify the second audio tracks from the at least one second audio source that is different from the first audio source comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

identify the second audio tracks from a local library that is accessible via a local area network to the playback device.

5 . The computing device of claim 1 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to cause the playback device to start playback of the playback queue comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

stream, via the network interface, a given first audio track from a network location; and

stream, via the network interface, data representing the given first audio track to the playback device.

6 . The computing device of claim 1 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to generate the second container comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

generate the second container with a pre-determined number of media items.

7 . The computing device of claim 6 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to repeatedly add the additional second audio tracks to the second container to maintain the threshold number of audio tracks comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

repeatedly add the additional second audio tracks to the second container to maintain the pre-determined number of media items.

8 . The computing device of claim 1 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to repeatedly add the additional second audio tracks to the second container to maintain the threshold number of audio tracks comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

repeatedly add the additional second audio tracks to the second container to maintain the pre-determined number of media items in the playback queue.

9 . The computing device of claim 1 , wherein the at least one non-transitory computer-readable medium further comprises program instructions that are executable by the at least one processor such that the computing device is configured to:

add a particular second audio track from the second container to the playback queue.

10 . The computing device of claim 1 , wherein the at least one non-transitory computer-readable medium further comprises program instructions that are executable by the at least one processor such that the computing device is configured to:

during the continuous playback mode, receive, via the network interface, a command to skip a particular second audio track; and

remove the particular second audio track according to the command to skip the particular second audio track.

11 . At least one non-transitory computer-readable medium comprising program instructions that are executable by at least one processor such that a computing device is configured to:

receive, via a network interface, data representing an instruction to add a first container to a playback queue associated with a playback device, wherein the first container is one of (a) an album or (b) a playlist, wherein the first container comprises first audio tracks, and wherein the playback queue is maintained in data storage that is remote from the playback device;

after receipt of the data representing the instruction, add the first container to the playback queue, wherein after addition of the playlist to the playback queue, the playback queue comprises the first audio tracks arranged in a particular order within the playback queue;

cause, via the network interface, the playback device to start playback of the playback queue;

when a continuous playback mode is enabled, transition playback to the continuous playback mode when the playback of the first container finishes, wherein the program instructions that are executable by the at least one processor such that the computing device is configured to transition playback to the continuous playback mode comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

generate a second container comprising a pre-determined number of second audio tracks, wherein the second audio tracks are based on the first audio tracks; and

start playback of the second container on the playback device; and

during playback in the continuous playback mode, repeatedly add additional second audio tracks to the second container to maintain a threshold number of audio tracks.

12 . The at least one non-transitory computer-readable medium of claim 11 , wherein the first audio tracks are streamed from a first audio source during playback of the playback queue, and wherein the program instructions that are executable by the at least one processor such that the computing device is configured to generate the second container comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

identify the second audio tracks from at least one second audio source that is different from the first audio source.

13 . The at least one non-transitory computer-readable medium of claim 12 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to identify the second audio tracks from the at least one second audio source that is different from the first audio source comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

identify a first portion of the second audio tracks from a local library that is accessible via a local area network to the playback device; and

identify a second portion of the second audio tracks from streaming audio that is accessible via a wide area network to the playback device.

14 . The at least one non-transitory computer-readable medium of claim 12 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to identify the second audio tracks from the at least one second audio source that is different from the first audio source comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

identify the second audio tracks from a local library that is accessible via a local area network to the playback device.

15 . The at least one non-transitory computer-readable medium of claim 11 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to generate the second container comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

generate the second container with a pre-determined number of media items.

16 . The at least one non-transitory computer-readable medium of claim 15 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to repeatedly add the additional second audio tracks to the second container to maintain the threshold number of audio tracks comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

repeatedly add the additional second audio tracks to the second container to maintain the pre-determined number of media items.

17 . The at least one non-transitory computer-readable medium of claim 11 , wherein the program instructions that are executable by the at least one processor such that the computing device is configured to repeatedly add the additional second audio tracks to the second container to maintain the threshold number of audio tracks comprise program instructions that are executable by the at least one processor such that the computing device is configured to:

repeatedly add the additional second audio tracks to the second container to maintain the pre-determined number of media items in the playback queue.

18 . The at least one non-transitory computer-readable medium of claim 11 , wherein the at least one non-transitory computer-readable medium further comprises program instructions that are executable by the at least one processor such that the computing device is configured to:

add a particular second audio track from the second container to the playback queue.

19 . The at least one non-transitory computer-readable medium of claim 11 , wherein the at least one non-transitory computer-readable medium further comprises program instructions that are executable by the at least one processor such that the computing device is configured to:

during the continuous playback mode, receive, via the network interface, a command to skip a particular second audio track; and

remove the particular second audio track according to the command to skip the particular second audio track.

20 . A method to be performed by a computing device, the method comprising:

receiving, via a network interface, data representing an instruction to add a first container to a playback queue associated with a playback device, wherein the first container is one of (a) an album or (b) a playlist, wherein the first container comprises first audio tracks, and wherein the playback queue is maintained in data storage that is remote from the playback device;

after receiving the data representing the instruction, adding the first container to the playback queue, wherein after addition of the playlist to the playback queue, the playback queue comprises the first audio tracks arranged in a particular order within the playback queue;

causing, via the network interface, the playback device to start playback of the playback queue;

when a continuous playback mode is enabled, transitioning playback to the continuous playback mode when the playback of the first container finishes, wherein transitioning playback to the continuous playback mode comprises:

generating a second container comprising a pre-determined number of second audio tracks, wherein the second audio tracks are based on the first audio tracks; and

starting playback of the second container on the playback device; and

during playback in the continuous playback mode, repeatedly adding additional second audio tracks to the second container to maintain a threshold number of audio tracks.

Assignments (2)
SECURITY INTEREST Recorded Jan 30, 2026
From: SONOS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 074533/0615 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2025
From: CORBIN, KEITH; BECKHARDT, STEVEN; COBURN, ARTHUR L., IV
To: SONOS, INC.
Reel/Frame 069903/0690 →
Continuity (7)
Continuation 18519443 · Nov 27, 2023
Continuation 16995339 · Aug 17, 2020
Continuation 15939700 · Mar 29, 2018
Continuation 14475093 · Sep 2, 2014
Provisional Application 62027214 · Jul 21, 2014
Provisional Application 62007906 · Jun 4, 2014
Related Publication 20250231671A1 · Jul 17, 2025
References Cited (3)
US 8880623B2 · McIntosh · 2014 [cited by examiner]
US 20140075308A1 · Sanders · 2014 [cited by examiner]
US 20140123006A1 · Chen · 2014 [cited by examiner]