IP Library Granted Patent US 9,661,379
Granted Patent B2
US 9,661,379 · App. 14/720,525 · Granted May 23, 2017

System and method for switching between media streams while providing a seamless user experience

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 9,661,379
App. No.
14/720,525
Granted
May 23, 2017
Kind
B2
Abstract

An electronic device with one or more processors, memory, and a display displays a first video stream on the display. The electronic device downloads and stores a portion of a second video stream and, once the portion of the second video stream has been downloaded, ceases to download the second video stream. The electronic device receives a request to display the second video stream on the display and, in response, determines whether the stored portion of the second video stream satisfies recency criteria with respect to a current stream time of the second video stream. In accordance with a determination that the stored portion of the second video stream satisfies the recency criteria, the electronic device displays at least a portion of the first video stream on the display concurrently with at least the stored portion of the second video stream.

Claims (64)

1. A method, comprising:

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

displaying a first video stream on the display;

downloading and storing a portion of a second video stream and, once the portion of the second video stream has been downloaded, ceasing to download the second video stream;

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

in response to the request:

determining whether the stored portion of the second video stream satisfies recency criteria with respect to a current stream time of the second video stream; and

in accordance with a determination that the stored portion of the second video stream satisfies the recency criteria, displaying at least a portion of the first video stream on the display concurrently with at least the stored portion of the second video stream.

2. The method of claim 1 , wherein the request is a second request, the method further comprising:

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

wherein the first video stream is displayed in response to receiving the first request.

3. The method of claim 1 , wherein the portion of the second video stream is of a predetermined amount.

4. The method of claim 1 , wherein determining whether the stored portion of the second video stream satisfies the recency criteria comprises determining whether a range of timestamps associated with the stored portion of the second video stream is within a predefined time threshold of a current stream time of the second video stream.

5. The method of claim 1 , wherein the stored portion of the second video stream was received, at least in part, from a content source for the second video stream.

6. The method of claim 1 , wherein:

receiving the request includes detecting a gesture; and

the stored portion of the second video stream is displayed in response to detecting an end of the gesture.

7. The method of claim 1 , wherein:

receiving the request includes detecting a gesture; and

the stored portion of the second video stream is displayed in response to detecting a beginning of the gesture.

8. The method of claim 7 , wherein the gesture moves in a respective direction; and

the method includes, 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.

9. The method of claim 8 , wherein, during the gesture:

the first video tile displays video content from the first video stream; and

the second video tile displays video content from the second video stream.

10. The method of claim 1 , wherein:

downloading and storing the portion of the second video stream comprises:

establishing a connection for receiving video data in the second video stream from a content source for the second video stream, and

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

ceasing to download the second video stream comprises:

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

11. A computer system, 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 including instructions for:

displaying a first video stream on the display;

downloading and storing a portion of a second video stream and, once the portion of the second video stream has been downloaded, ceasing to download the second video stream; and

in response to a request to display the second video stream on the display:

determining whether the stored portion of the second video stream satisfies recency criteria with respect to a current stream time of the second video stream; and

in accordance with a determination that the stored portion of the second video stream satisfies the recency criteria, displaying at least a portion of the first video stream on the display concurrently with at least the stored portion of the second video stream.

12. The computer system of claim 11 , wherein:

the request is a second request; and

the one or more programs further include instructions for displaying the first video stream in response to a first request received before the second request.

13. The computer system of claim 11 , wherein the portion of the second video stream is of a predetermined amount.

14. The computer system of claim 11 , wherein the instructions for determining whether the stored portion of the second video stream satisfies the recency criteria comprise instructions for determining whether a range of timestamps associated with the stored portion of the second video stream is within a predefined time threshold of a current stream time of the second video stream.

15. The computer system of claim 11 , wherein the request is a gesture that moves in a respective direction, the one or more programs further comprising instructions for:

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.

16. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computer system with one or more processors and a display, cause the computer system to:

display a first video stream on the display;

download and store a portion of a second video stream and, once the portion of the second video stream has been downloaded, cease to download the second video stream; and

in response to a request to display the second video stream on the display:

determine whether the stored portion of the second video stream satisfies recency criteria with respect to a current stream time of the second video stream; and

in accordance with a determination that the stored portion of the second video stream satisfies the recency criteria, display at least a portion of the first video stream on the display concurrently with at least the stored portion of the second video stream.

17. The computer-readable storage medium of claim 16 , wherein:

the request is a second request; and

the one or more programs further include instructions, which when executed by the computer system, cause the computer system to display the first video stream in response to a first request received before the second request.

18. The computer-readable storage medium of claim 16 , wherein the portion of the second video stream is of a predetermined amount.

19. The computer-readable storage medium of claim 16 , wherein the instructions to determine whether the stored portion of the second video stream satisfies the recency criteria comprise instructions to determine whether a range of timestamps associated with the stored portion of the second video stream is within a predefined time threshold of a current stream time of the second video stream.

20. The computer-readable storage medium of claim 16 , wherein the request is a gesture that moves in a respective direction, the one or more programs further comprising instructions, which when executed by the computer system, cause the computer system to:

slide 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

slide 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.