IP Library Granted Patent US 11,206,446
Granted Patent B2
US 11,206,446 · App. 16/925,552 · Granted Dec 21, 2021

Frame replacement without overrun

Inventor: Andrew L. Ashbacher (Draper, UT)
Assignee: ROKU, INC.
H04N21/44008G06F16/783G06K9/00711G06K9/00744G06K9/6215G06Q30/02H04N21/2668H04N21/4307H04N21/44016H04N21/44204H04N21/812H04N21/83H04N21/8352
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,206,446
App. No.
16/925,552
Granted
Dec 21, 2021
Kind
B2
Abstract

A method for a frame certainty metric for automatic content recognition. The method includes determining a frame match between media device frames of a media device stream relative to broadcast frames of a broadcast media stream and determining whether to shift the frame match by determining the following: a first frame certainty metric based on a first media device fingerprint and a target broadcast fingerprint; a second frame certainty metric based on a second media device fingerprint sequentially adjacent the first media device fingerprint and the target broadcast fingerprint; a third frame certainty metric based on a third media device fingerprint sequentially adjacent the first media device fingerprint and the target broadcast fingerprint; and a greatest frame certainty metric. The method further includes identifying the media device fingerprint corresponding to the greatest frame certainty metric as a target media device fingerprint matching the target broadcast fingerprint.

Claims (31)

1. A method comprising:

selecting a first sequence of frames of a media device stream for replacement by a second sequence of frames;

determining that replacement of the first sequence of frames with the second sequence of frames occurred too late such that at least a first frame of the first sequence of frames is displayed prior to a remaining portion of the first sequence of frames being replaced by the second sequence of frames; and

based on the determining, causing replacement of a portion of the first sequence of frames that does not include the first frame with a truncated portion of the second sequence of frames such that the truncated portion of the second sequence of frames does not overrun a duration of the first sequence of frames within the media device stream.

2. The method of claim 1 , wherein the determining comprises determining that it is too late to replace three frames of the first sequence of frames prior to playback of the three frames.

3. The method of claim 1 , wherein the first sequence of frames includes frames of an advertisement.

4. The method of claim 1 , further comprising causing playback of a third sequence of frames after playback of the truncated portion of the second sequence of frames.

5. The method of claim 4 , wherein the third sequence of frames includes frames of live programming.

6. The method of claim 1 , wherein the second sequence of frames includes frames of an advertisement.

7. The method of claim 1 , wherein the truncated portion of the second sequence of frames includes an initial frame of the second sequence of frames but does not include a final frame of the second sequence of frames.

8. A computing device comprising:

a processor; and

a computer readable medium storing instructions that, when executed by the processor, cause the computing device to perform functions comprising:

selecting a first sequence of frames of a media device stream for replacement by a second sequence of frames;

determining that replacement of the first sequence of frames with the second sequence of frames occurred too late such that at least a first frame of the first sequence of frames is displayed prior to a remaining portion of the first sequence of frames being replaced by the second sequence of frames; and

based on the determining, causing replacement of a portion of the first sequence of frames that does not include the first frame with a truncated portion of the second sequence of frames such that the truncated portion of the second sequence of frames does not overrun a duration of the first sequence of frames within the media device stream.

9. The computing device of claim 8 , wherein the determining comprises determining that it is too late to replace three frames of the first sequence of frames prior to playback of the three frames.

10. The computing device of claim 8 , wherein the first sequence of frames includes frames of an advertisement.

11. The computing device of claim 8 , the functions further comprising causing playback of a third sequence of frames after playback of the truncated portion of the second sequence of frames.

12. The computing device of claim 11 , wherein the third sequence of frames includes frames of live programming.

13. The computing device of claim 8 , wherein the second sequence of frames includes frames of an advertisement.

14. The computing device of claim 8 , wherein the truncated portion of the second sequence of frames includes an initial frame of the second sequence of frames but does not include a final frame of the second sequence of frames.

15. A non-transitory computer readable medium storing instructions that, when executed by a computing device, cause the computing device to perform functions comprising:

selecting a first sequence of frames of a media device stream for replacement by a second sequence of frames;

determining that replacement of the first sequence of frames with the second sequence of frames occurred too late such that at least a first frame of the first sequence of frames is displayed prior to a remaining portion of the first sequence of frames being replaced by the second sequence of frames; and

based on the determining, causing replacement of a portion of the first sequence of frames that does not include the first frame with a truncated portion of the second sequence of frames such that the truncated portion of the second sequence of frames does not overrun a duration of the first sequence of frames within the media device stream.

16. The non-transitory computer readable medium of claim 15 , wherein the determining comprises determining that it is too late to replace three frames of the first sequence of frames prior to playback of the three frames.

17. The non-transitory computer readable medium of claim 15 , wherein the first sequence of frames includes frames of an advertisement.

18. The non-transitory computer readable medium of claim 15 , the functions further comprising causing playback of a third sequence of frames after playback of the truncated portion of the second sequence of frames.

19. The non-transitory computer readable medium of claim 15 , wherein the second sequence of frames includes frames of an advertisement.

20. The non-transitory computer readable medium of claim 15 , wherein the truncated portion of the second sequence of frames includes an initial frame of the second sequence of frames but does not include a final frame of the second sequence of frames.

Assignments (6)
SECURITY INTEREST Recorded Sep 18, 2024
From: ROKU, INC.
To: CITIBANK, N.A.
Reel/Frame 068982/0377 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT (REEL/FRAME 056982/0194) Recorded Feb 22, 2023
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROKU, INC.; ROKU DX HOLDINGS, INC.
Reel/Frame 062826/0664 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Jun 29, 2021
From: ROKU, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 056982/0194 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2021
From: THE NIELSEN COMPANY (US), LLC
To: ROKU, INC.
Reel/Frame 056106/0376 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2020
From: ASHBACHER, ANDREW L.
To: SORENSON MEDIA, INC.
Reel/Frame 053193/0406 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2020
From: SORENSON MEDIA, INC.
To: THE NIELSEN COMPANY (US), LLC
Reel/Frame 053193/0448 →