IP Library Granted Patent US 11,250,480
Granted Patent B1
US 11,250,480 · App. 17/118,400 · Granted Feb 15, 2022

Replacement advertisement selection after channel changes

Inventor: Matthew Grover (Cardiff, GB)
Assignee: Roku, Inc.
G06Q30/0277G06Q30/0272H04N21/23424
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,250,480
App. No.
17/118,400
Granted
Feb 15, 2022
Kind
B1
Abstract

In one aspect, an example method includes (i) receiving, by a computing system, from a content-presentation device a request for supplemental content for a content-replacement operation, with the request including an identifier of a stored replacement advertisement segment; (ii) selecting, by the computing system, a replacement advertisement segment for output by the content-presentation device in place of a modifiable advertisement segment; (iii) determining, by the computing system, that the selected replacement advertisement segment is different from the stored replacement advertisement segment; (iv) determining, by the computing system, whether the stored replacement advertisement segment is a valid replacement for the content-replacement operation; (v) determining, by the computing system, that the content-presentation device should output the selected replacement advertisement segment instead of outputting the stored replacement advertisement segment; and (vi) causing, by the computing system, the selected replacement advertisement segment to be transmitted to the content-presentation device.

Claims (63)

1. A method comprising:

obtaining, by a computing system, historic download speed data for a content-presentation device;

receiving, by the computing system, from the content-presentation device a request for supplemental content for use in connection with performing a content-replacement operation, wherein the request includes an identifier of a replacement advertisement segment that is stored by the content-presentation device;

based on receiving the request, selecting, by the computing system, a replacement advertisement segment for output by the content-presentation device in place of a modifiable advertisement segment;

determining, by the computing system, that the selected replacement advertisement segment is different from the stored replacement advertisement segment;

based on the determining that the selected replacement advertisement segment is different from the stored replacement advertisement segment, determining, by the computing system, whether the stored replacement advertisement segment is a valid replacement for use in connection with performing the content-replacement operation;

determining, by the computing system based on the historic download speed data for the content-presentation device, a probability of the content-presentation device being able to receive the selected replacement advertisement segment before the content-replacement operation;

determining, by the computing system, that the probability satisfies a threshold condition;

upon determining that the stored replacement advertisement segment is a valid replacement and based on the determining that the probability satisfies the threshold condition, determining, by the computing system, that the content-presentation device should output the selected replacement advertisement segment in place of the modifiable advertisement segment instead of outputting the stored replacement advertisement segment in place of the modifiable advertisement segment; and

upon determining that the content-presentation device should output the selected replacement advertisement segment instead of the stored replacement advertisement segment, causing, by the computing system, the selected replacement advertisement segment to be transmitted to the content-presentation device.

2. The method of claim 1 , further comprising causing, by the computing system, the stored replacement advertisement segment to be transmitted to the content-presentation device while the content-presentation device is receiving first content on a first channel,

wherein the request is received while the content-presentation device is receiving second content on a second channel.

3. The method of claim 1 , wherein determining that the content-presentation device should output the selected replacement advertisement segment instead of the stored replacement advertisement segment comprises:

determining a first estimated value of serving the stored replacement advertisement segment to the content-presentation device;

determining a second estimated value of serving the selected replacement advertisement segment to the content-presentation device; and

based on the second estimated value being greater than the first estimated value, determining that the content-presentation device should output the selected replacement advertisement segment instead of the stored replacement advertisement segment.

4. The method of claim 3 ,

wherein determining the second estimated value comprises determining the second estimated value based on the probability.

5. The method of claim 4 , wherein determining the probability comprises determining the probability based on historic timing deviations from a broadcast schedule for the modifiable advertisement segment.

6. The method of claim 1 , wherein obtaining the historic download speed data comprises measuring download speed data when the content-presentation device downloads supplemental content from a supplemental-content delivery system.

7. A non-transitory computer-readable medium having stored thereon program instructions that upon execution by a processor, cause performance of a set of acts comprising:

obtaining historic download speed data for a content-presentation device;

receiving from the content-presentation device a request for supplemental content for use in connection with performing a content-replacement operation, wherein the request includes an identifier of a replacement advertisement segment that is stored by the content-presentation device;

based on receiving the request, selecting a replacement advertisement segment for output by the content-presentation device in place of a modifiable advertisement segment;

determining that the selected replacement advertisement segment is different from the stored replacement advertisement segment;

based on the determining that the selected replacement advertisement segment is different from the stored replacement advertisement segment, determining whether the stored replacement advertisement segment is a valid replacement for use in connection with performing the content-replacement operation;

determining, based on the historic download speed data for the content-presentation device, a probability of the content-presentation device being able to receive the selected replacement advertisement segment before the content-replacement operation;

determining that the probability satisfies a threshold condition;

upon determining that the stored replacement advertisement segment is a valid replacement and based on the determining that the probability satisfies the threshold condition, determining that the content-presentation device should output the selected replacement advertisement segment in place of the modifiable advertisement segment instead of outputting the stored replacement advertisement segment in place of the modifiable advertisement segment; and

upon determining that the content-presentation device should output the selected replacement advertisement segment instead of the stored replacement advertisement segment, causing the selected replacement advertisement segment to be transmitted to the content-presentation device.

8. The non-transitory computer-readable medium of claim 7 , wherein:

the set of acts further comprise causing the stored replacement advertisement segment to be transmitted to the content-presentation device while the content-presentation device is receiving first content on a first channel, and

the request is received while the content-presentation device is receiving second content on a second channel.

9. The non-transitory computer-readable medium of claim 7 , wherein determining that the content-presentation device should output the selected replacement advertisement segment instead of the stored replacement advertisement segment comprises:

determining a first estimated value of serving the stored replacement advertisement segment to the content-presentation device;

determining a second estimated value of serving the selected replacement advertisement segment to the content-presentation device; and

based on the second estimated value being greater than the first estimated value, determining that the content-presentation device should output the selected replacement advertisement segment instead of the stored replacement advertisement segment.

10. The non-transitory computer-readable medium of claim 9 , wherein

determining the second estimated value comprises determining the second estimated value based on the probability.

11. The non-transitory computer-readable medium of claim 10 , wherein determining the probability comprises determining the probability based on historic timing deviations from a broadcast schedule for the modifiable advertisement segment.

12. The non-transitory computer-readable medium of claim 7 , wherein obtaining the historic download speed data comprises measuring download speed data when the content-presentation device downloads supplemental content from a supplemental-content delivery system.

13. A computing system comprising:

a processing unit; and

a non-transitory computer-readable medium having stored therein instructions that are executable to cause the computing system to perform a set of acts comprising:

obtaining historic download speed data for a content-presentation device,

receiving from the content-presentation device a request for supplemental content for use in connection with performing a content-replacement operation, wherein the request includes an identifier of a replacement advertisement segment that is stored by the content-presentation device,

based on receiving the request, selecting a replacement advertisement segment for output by the content-presentation device in place of a modifiable advertisement segment,

determining that the selected replacement advertisement segment is different from the stored replacement advertisement segment,

based on the determining that the selected replacement advertisement segment is different from the stored replacement advertisement segment, determining whether the stored replacement advertisement segment is a valid replacement for use in connection with performing the content-replacement operation,

determining, based on the historic download speed data, a probability of the content-presentation device being able to receive the selected replacement advertisement segment before the content-replacement operation,

determining that the probability satisfies a threshold condition,

upon determining that the stored replacement advertisement segment is a valid replacement and based on the determining that the probability satisfies the threshold condition, determining that the content-presentation device should output the selected replacement advertisement segment in place of the modifiable advertisement segment instead of outputting the stored replacement advertisement segment in place of the modifiable advertisement segment, and

upon determining that the content-presentation device should output the selected replacement advertisement segment instead of the stored replacement advertisement segment, causing the selected replacement advertisement segment to be transmitted to the content-presentation device.

14. The computing system of claim 13 , wherein:

the set of acts further comprise causing the stored replacement advertisement segment to be transmitted to the content-presentation device while the content-presentation device is receiving first content on a first channel, and

the request is received while the content-presentation device is receiving second content on a second channel.

15. The computing system of claim 13 , wherein determining that the content-presentation device should output the selected replacement advertisement segment instead of the stored replacement advertisement segment comprises:

determining a first estimated value of serving the stored replacement advertisement segment to the content-presentation device;

determining a second estimated value of serving the selected replacement advertisement segment to the content-presentation device; and

based on the second estimated value being greater than the first estimated value, determining that the content-presentation device should output the selected replacement advertisement segment instead of the stored replacement advertisement segment.

16. The computing system of claim 15 , wherein

determining the second estimated value comprises determining the second estimated value based on the probability.

17. The computing system of claim 13 , wherein obtaining the historic download speed data comprises measuring download speed data when the content-presentation device downloads supplemental content from a supplemental-content delivery system.

Assignments (5)
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 Dec 10, 2020
From: GROVER, MATTHEW
To: THE NIELSEN COMPANY (US), LLC
Reel/Frame 054611/0670 →
Continuity (1)
Provisional Application 63059119 · Jul 30, 2020