IP Library Granted Patent US 10,110,947
Granted Patent B2
US 10,110,947 · App. 15/583,930 · Granted Oct 23, 2018

System and method for determining whether to use cached media

Inventors: Eric Hoffert (South Orange, NJ); Mike Berkley (Cold Springs, NY); Kevin Faaborg (Brooklyn, NY); Gustav Soderstrom (Stockholm, SE)
Assignee: SPOTIFY AB
H04N21/4384G06F3/017H04L65/60H04N5/4403H04N5/44591H04N21/4126H04N21/42222H04N21/42224H04N21/437H04N21/4307H04N21/4312H04N21/4314H04N21/4316H04N21/4331H04N21/44004H04N21/44209H04N21/47202H04N21/482H04N21/4383H04N21/4392H04N21/4667H04N21/4755
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 10,110,947
App. No.
15/583,930
Granted
Oct 23, 2018
Kind
B2
Abstract

An electronic device with one or more processors, memory and a display displays a first video stream on the display. While displaying the first video stream, the electronic device downloads and stores a first portion of a second video stream and receives a request to display the second video stream on the display. In response to receiving the request, the electronic device starts to play the second video stream using the first portion of the second video stream, if the first portion of the second video stream meets recency criteria with respect to a current stream time of the second video stream. But if the first portion of the second video stream does not meet the recency criteria, the electronic device requests a second portion of the second video stream that is outside of the first portion of the second video stream.

Claims (55)

1. A non-transitory computer-readable storage medium storing one or more programs executable by an electronic device with one or more processors and a display, the one or more programs comprising instructions for:

while displaying a first video stream on the display:

downloading and storing a first portion of a second video stream; and

receiving a request to display the second video stream on the display; and

in response to receiving the request:

in accordance with a determination that the first portion of the second video stream meets recency criteria with respect to a current stream time of the second video stream, starting to play the second video stream using the first portion of the second video stream; and

in accordance with a determination that the first portion of the second video stream does not meet the recency criteria, requesting a second portion of the second video stream that is outside of the first portion of the second video stream.

2. The computer-readable storage medium of claim 1 , wherein the request is a second request, and the one or more programs further comprise instructions for:

before displaying the first video stream on the display, receiving a first request to display the first video stream on the display; and

displaying the first video stream in response to receiving the first request.

3. The computer-readable storage medium of claim 1 , wherein the first portion of the second video stream meets the recency criteria when the current stream time of the second video stream is within a predefined time threshold of a timestamp corresponding to the first portion of the second video stream.

4. The computer-readable storage medium of claim 1 , wherein the first portion of the second video stream does not meet the recency criteria when the current stream time of the second video stream is not within a predefined time threshold of a timestamp corresponding to the first portion of the second video stream.

5. The computer-readable storage medium of claim 1 , wherein the instructions for receiving the request comprise instructions for detecting an end of a gesture.

6. The computer-readable storage medium of claim 5 , wherein the instructions for requesting the second portion of the second video stream comprise instructions for requesting the second portion of the second video stream in response to detecting the end of the gesture.

7. The computer-readable storage medium of claim 1 , wherein the instructions for receiving the request comprise instructions for detecting a beginning of a gesture.

8. The computer-readable storage medium of claim 7 , wherein the instructions for requesting the second portion of the second video stream comprise instructions for requesting the second portion of the second video stream in response to detecting the beginning of the gesture.

9. The computer-readable storage medium of claim 8 , wherein the gesture is a gesture corresponding to movement in a respective direction; and

the one or more programs further comprise instructions for, in response to detecting the gesture:

sliding a first video tile that includes content from the first video stream toward a first edge of the display in a direction corresponding to the respective direction; and

sliding a second video tile that includes content from the second video stream onto the display from a second edge of the display that is opposite to the first edge of the display.

10. The computer-readable storage medium of claim 9 , wherein the one or more programs further comprise instructions for, during the gesture:

displaying video content from the first video stream in the first video tile; and

displaying video content from the second video stream in the second video tile.

11. The computer-readable storage medium of claim 1 , wherein:

the instructions for downloading and storing the first portion of the second video stream comprise instructions for downloading and storing the first portion of the second video stream from a content source for the second video stream; and

the instructions for requesting the second portion of the second video stream comprise instructions for requesting the second portion of the second video stream from the content source for the second video stream.

12. The computer-readable storage medium of claim 11 , wherein the instructions for downloading and storing the first portion of the second video stream comprise instructions for:

establishing a connection for receiving the second video stream from the content source for the second video stream;

receiving the first portion of the second video stream from the content source for the second video stream using the connection; and

while maintaining the connection, stopping delivery of the second video stream to the electronic device from the content source for the second video stream.

13. The computer-readable storage medium of claim 1 , wherein:

the first video stream corresponds to a first channel in a predetermined sequence of channels;

the second video stream corresponds to a second channel in the predetermined sequence of channels that is adjacent to the first channel;

the request is a second request;

the one or more programs further comprise instructions for starting to download the first video stream from a content source for the first video stream in response to receiving a first request to display the first video stream on the display; and

the instructions for downloading and storing the first portion of the second video stream comprise instructions for starting to download and store the first portion of the second video stream from the content source for the second video stream after starting to download the first video stream.

14. The computer-readable storage medium of claim 1 , the one or more programs further comprising instructions for displaying the second video stream on the display concurrently with at least a portion of the first video stream.

15. An electronic device, comprising:

a display;

one or more processors; and

memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising instructions for:

while displaying a first video stream on the display:

downloading and storing a first portion of a second video stream; and

receiving a request to display the second video stream on the display; and

in response to receiving the request:

in accordance with a determination that the first portion of the second video stream meets recency criteria with respect to a current stream time of the second video stream, starting to play the second video stream using the first portion of the second video stream; and

in accordance with a determination that the first portion of the second video stream does not meet the recency criteria, requesting a second portion of the second video stream that is outside of the first portion of the second video stream.

16. A method, comprising:

at an electronic device with one or more processors, memory, and a display:

while displaying a first video stream on the display:

downloading and storing a first portion of a second video stream; and

receiving a request to display the second video stream on the display; and

in response to receiving the request:

determining that the first portion of the second video stream does not meet recency criteria; and,

in accordance with the determination that the first portion of the second video stream does not meet the recency criteria with respect to a current stream time of the second video stream, requesting a second portion of the second video stream that is outside of the first portion of the second video stream.

Continuity (3)
Continuation 14165518 · Jan 27, 2014
Provisional Application 61836079 · Jun 17, 2013
Related Publication 20170289489A1 · Oct 5, 2017