IP Library Granted Patent US 11,627,368
Granted Patent B1
US 11,627,368 · App. 17/696,607 · Granted Apr 11, 2023

Automatic offering and switching to a higher quality media stream

Inventor: Matthew Grover (San Jose, CA)
Assignee: Roku, Inc.
H04N21/44016H04L65/80H04N21/44008H04N21/47202
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 11,627,368
App. No.
17/696,607
Granted
Apr 11, 2023
Kind
B1
Abstract

Disclosed herein are system, apparatus, article of manufacture, method and/or computer program product embodiments, and/or combinations and sub-combinations thereof, for automatically offering and switching to outputting to a higher quality media stream in place of a lower quality media stream. An example embodiment operates by performing automated content recognition (ACR) on a first media stream thereby determining a first content item having a first quality level in the first media stream. The embodiment determines that the first content item matches a second content item having a second quality level in a second media stream at a content source, wherein the second quality level is higher than the first quality level. The embodiment requests the second media stream from the content source. The embodiment receives the second media stream from the content source. The embodiment then outputs the second media stream in place of the first media stream.

Claims (62)

1. A computer implemented method for outputting to a higher quality media stream in place of a lower quality media stream, comprising:

performing automated content recognition (ACR) on a first media stream from a first content source, thereby identifying a first content item having a first quality level in the first media stream and a time point where the first content item occurs in the first media stream;

transmitting, to a system server, an indication that the first content item occurs in the first media stream, the first quality level of the first content item, and the time point where the first content item occurs in the first media stream;

receiving, from the system server, an alert that the first content item matches a second content item having a second quality level in a second media stream from a second content source, wherein the second content source is different from the first content source, and the second quality level is higher than the first quality level;

requesting the second media stream from the second content source based on the time point where the first content item occurs in the first media stream;

receiving the second media stream from the second content source; and

outputting the second media stream in place of the first media stream.

2. The computer implemented method of claim 1 , wherein the receiving the second media stream further comprises:

receiving the second content item from the second content source beginning at the time point where the first content item occurs in the first media stream.

3. The computer implemented method of claim 1 , wherein the receiving the second media stream further comprises:

storing a portion of the second content item in a buffer based on the time point where the first content item occurs in the first media stream and a network condition associated with the second content source; and

wherein the outputting the second media stream further comprises:

outputting the second content item from the buffer.

4. The computer implemented method of claim 1 , wherein the outputting the second media stream further comprises:

outputting the second media stream in place of the first media stream after an advertisement occurred in the first media stream.

5. The computer implemented method of claim 1 , wherein the outputting the second media stream further comprises:

outputting the second media stream in place of the first media stream in response to receiving a user confirmation.

6. The computer implemented method of claim 1 , wherein the performing the ACR on the first media stream further comprises:

performing the ACR on the first media stream in response to outputting the first media stream or after an advertisement occurred in the first media stream.

7. The computer implemented method of claim 1 , wherein the performing the ACR on the first media stream further comprises:

performing the ACR on the first media stream in response to receiving a content update notification from the content source.

8. A system, comprising:

at least one processor configured to:

perform automated content recognition (ACR) on a first media stream from a first content source, thereby identifying a first content item having a first quality level in the first media stream and a time point where the first content item occurs in the first media stream;

transmit, to a system server, an indication that the first content item occurs in the first media stream, the first quality level of the first content item, and the time point where the first content item occurs in the first media stream;

receive, from the system server, an alert that the first content item matches a second content item having a second quality level in a second media stream from a second content source, wherein the second content source is different from the first content source, and the second quality level is higher than the first quality level;

request the second media stream from the second content source based on the time point where the first content item occurs in the first media stream;

receive the second media stream from the second content source; and

output the second media stream in place of the first media stream.

9. The system of claim 8 , wherein to receive the second media stream, the at least one processor is further configured to:

receive the second content item from the second content source beginning at the time point where the first content item occurs in the first media stream.

10. The system of claim 8 , wherein to receive the second media stream, the at least one processor is further configured to:

store a portion of the second content item in a buffer based on the time point where the first content item occurs in the first media stream and a network condition associated with the second content source; and

wherein to output the second media stream, the at least one processor is further configured to:

output the second content item from the buffer.

11. The system of claim 8 , wherein to output the second media stream, the at least one processor is further configured to:

output the second media stream in place of the first media stream after an advertisement occurred in the first media stream.

12. The system of claim 8 , wherein to output the second media stream, the at least one processor is further configured to:

output the second media stream in place of the first media stream in response to receiving a user confirmation.

13. The system of claim 8 , wherein to perform the ACR on the first media stream, the at least one processor is further configured to:

perform the ACR on the first media stream in response to outputting the first media stream or after an advertisement occurred in the first media stream.

14. The system of claim 8 , wherein to perform the ACR on the first media stream, the at least one processor is further configured to:

perform the ACR on the first media stream in response to receiving a content update notification from the content source.

15. A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations comprising:

performing automated content recognition (ACR) on a first media stream from a first content source, thereby identifying a first content item having a first quality level in the first media stream and a time point where the first content item occurs in the first media stream;

transmitting, to a system server, an indication that the first content item occurs in the first media stream, the first quality level of the first content item, and the time point where the first content item occurs in the first media stream;

receiving, from the system server, an alert that the first content item matches a second content item having a second quality level in a second media stream from a second content source, wherein the second content source is different from the first content source, and the second quality level is higher than the first quality level;

requesting the second media stream from the second content source based on the time point where the first content item occurs in the first media stream;

receiving the second media stream from the second content source; and

outputting the second media stream in place of the first media stream.

16. The non-transitory computer-readable medium of claim 15 , wherein the receiving the second media stream further comprises:

receiving the second content item from the second content source beginning at the time point where the first content item occurs in the first media stream.

17. The non-transitory computer-readable medium of claim 15 , wherein the receiving the second media stream further comprises:

storing a portion of the second content item in a buffer based on the time point where the first content item occurs in the first media stream and a network condition associated with the second content source; and

wherein the outputting the second media stream further comprises:

outputting the second content item from the buffer.

18. The non-transitory computer-readable medium of claim 15 , wherein the outputting the second media stream further comprises:

outputting the second media stream in place of the first media stream in response to receiving a user confirmation.

19. The non-transitory computer-readable medium of claim 15 , wherein the performing the ACR on the first media stream further comprises:

performing the ACR on the first media stream in response to outputting the first media stream or after an advertisement occurred in the first media stream.

20. The non-transitory computer-readable medium of claim 15 , wherein the performing the ACR on the first media stream further comprises:

performing the ACR on the first media stream in response to receiving a content update notification from the content source.

Assignments (2)
SECURITY INTEREST Recorded Sep 18, 2024
From: ROKU, INC.
To: CITIBANK, N.A.
Reel/Frame 068982/0377 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2022
From: GROVER, MATTHEW
To: ROKU, INC.
Reel/Frame 059286/0840 →
Cited By (2)
US 12,556,751 US 12,719,944