IP Library Granted Patent US 11,523,162
Granted Patent B2
US 11,523,162 · App. 17/504,113 · Granted Dec 6, 2022

Content modification system with prioritized content delivery feature

Inventor: Matthew George Grover (Cardiff, GB)
Assignee: ROKU, INC.
H04N21/26241H04N21/44016H04N21/64738H04N21/812
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,523,162
App. No.
17/504,113
Granted
Dec 6, 2022
Kind
B2
Abstract

A method implemented by a computing system includes receiving, from each of a plurality of content presentation devices, a request for supplemental content. Each content presentation device is configured to present program content received from a content distribution system, wherein the program content is associated with a program schedule that specifies an advertisement start time. The computing system determines, for each of the plurality of content presentation devices, a supplemental content processing time that corresponds to an amount of time required by a particular content presentation device to receive the supplemental content to facilitate presentation of the supplemental content. The computing system schedules the plurality of content presentation devices to receive requested supplemental content according to corresponding supplemental content processing times and advertisement start times. Content presentation devices having higher supplemental content processing times and earlier advertisement start times are scheduled to begin receiving requested supplemental content before content presentation devices associated with lower supplemental content processing times and later advertisements start times. Supplemental content is subsequently communicated to the content presentation devices according to the schedule.

Claims (58)

1. A method implemented by a computing system, the method comprising:

receiving, from each of a plurality of content presentation devices, a request for supplemental content, wherein each content presentation device is configured to present program content received from a content distribution system;

determining, by the computing system and for each of the plurality of content presentation devices, a supplemental content processing time that corresponds to an amount of time required by a particular content presentation device to receive the supplemental content to facilitate presentation of the supplemental content;

scheduling, by the computing system, the plurality of content presentation devices to receive requested supplemental content based in part on corresponding supplemental content processing times, wherein content presentation devices having higher supplemental content processing times are scheduled to begin receiving requested supplemental content before content presentation devices associated with lower supplemental content processing times; and

communicating requested supplemental content according to the scheduling.

2. The method according to claim 1 , wherein determining the supplemental content processing time comprises:

determining a network speed for the content presentation device.

3. The method according to claim 2 , wherein the content presentation device is configured to determine the network speed and communicate the network speed in the request.

4. The method according to claim 1 , wherein the program content is associated with a program schedule that specifies a scheduled advertisement start time and the method further comprises:

determining a content distribution system delay that corresponds to a difference between the scheduled advertisement start time and an actual time at which a corresponding advertisement will be presented on the content presentation device; and

determining an adjusted advertisement start time as a sum of the advertisement start time specified in the program schedule and the content distribution delay;

wherein scheduling the plurality of content presentation devices to receive requested supplemental content based in part on the supplemental content processing times comprises scheduling the plurality of content presentation devices to receive requested supplemental content according to supplemental content processing times and adjusted advertisement start times.

5. The method according to claim 4 , further comprising:

determining an occurrence of a pause operation on a particular content presentation device during which program presentation is paused, and a duration of the pause operation; and

determining the adjusted advertisement start time as a sum of the advertisement start time specified in the program schedule and the duration of the pause operation.

6. The method according to claim 4 , further comprising:

determining, by the computing system and based on the supplemental content processing time and the advertisement start time, that a particular request for supplemental content cannot be delivered before the scheduled advertisement start time; and

responsive to determining that the supplemental content cannot be delivered before the scheduled advertisement start time, canceling the particular request.

7. The method according to claim 1 , wherein the supplemental content corresponds to a replacement advertisement to replace an advertisement communicated in the program content.

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

receiving, from each of a plurality of content presentation devices, a request for supplemental content, wherein each content presentation device is configured to present program content received from a content distribution system;

determining, by the processor and for each of the plurality of content presentation devices, a supplemental content processing time that corresponds to an amount of time required by a particular content presentation device to receive the supplemental content to facilitate presentation of the supplemental content;

scheduling, by the processor, the plurality of content presentation devices to receive requested supplemental content based in part on corresponding supplemental content processing times, wherein content presentation devices having higher supplemental content processing times are scheduled to begin receiving requested supplemental content before content presentation devices associated with lower supplemental content processing times; and

communicating requested supplemental content according to the scheduling.

9. The non-transitory computer-readable storage medium according to claim 8 , wherein determining the supplemental content processing time comprises:

determining a network speed for the content presentation device.

10. The non-transitory computer-readable storage medium according to claim 9 , wherein the content presentation device is configured to determine the network speed and communicate the network speed in the request.

11. The non-transitory computer-readable storage medium according to claim 8 , wherein the program content is associated with a program schedule that specifies a scheduled advertisement start time and wherein the set of operations further comprise:

determining a content distribution system delay that corresponds to a difference between the scheduled advertisement start time specified in the program schedule and an actual time at which a corresponding advertisement will be presented on the content presentation device; and

determining an adjusted advertisement start time as a sum of the advertisement start time specified in the program schedule and the content distribution delay;

wherein scheduling the plurality of content presentation devices to receive requested supplemental content based in part on the supplemental content processing times comprises scheduling the plurality of content presentation devices to receive requested supplemental content according to supplemental content processing times and adjusted advertisement start times.

12. The non-transitory computer-readable storage medium according to claim 11 , wherein the set of operations further comprise:

determining an occurrence of a pause operation on a particular content presentation device during which program presentation is paused, and a duration of the pause operation; and

determining the adjusted advertisement start time as a sum of the advertisement start time specified in the program schedule and the duration of the pause operation.

13. The non-transitory computer-readable storage medium according to claim 11 , wherein the set of operations further comprise:

determining, by the processor and based on the supplemental content processing time and the advertisement start time, that a particular request for supplemental content cannot be delivered before the scheduled advertisement start time; and

responsive to determining that the supplemental content cannot be delivered before the scheduled advertisement start time, canceling the particular request.

14. The non-transitory computer-readable storage medium according to claim 8 , wherein the supplemental content corresponds to a replacement advertisement to replace an advertisement communicated in the program content.

15. A computing system comprising:

a processor; and

a non-transitory computer-readable storage medium, having stored thereon program instructions that, upon execution by the processor, cause performance of a set of operations comprising:

receiving, from each of a plurality of content presentation devices, a request for supplemental content, wherein each content presentation device is configured to present program content received from a content distribution system;

determining, by the processor and for each of the plurality of content presentation devices, a supplemental content processing time that corresponds to an amount of time required by a particular content presentation device to receive the supplemental content to facilitate presentation of the supplemental content;

scheduling, by the processor, the plurality of content presentation devices to receive requested supplemental content based in part on corresponding supplemental content processing times, wherein content presentation devices having higher supplemental content processing times are scheduled to begin receiving requested supplemental content before content presentation devices associated with lower supplemental content processing times; and

communicating requested supplemental content according to the scheduling.

16. The computing system according to claim 15 , wherein determining the supplemental content processing time comprises:

determining a network speed for the content presentation device.

17. The computing system according to claim 16 , wherein the content presentation device is configured to determine the network speed and communicate the network speed in the request.

18. The computing system according to claim 15 , wherein the program content is associated with a program schedule that specifies a scheduled advertisement start time and wherein the set of operations further comprise:

determining a content distribution system delay that corresponds to a difference between the scheduled advertisement start time specified in the program schedule and an actual time at which a corresponding advertisement will be presented on the content presentation device; and

determining an adjusted advertisement start time as a sum of the advertisement start time specified in the program schedule and the content distribution delay;

wherein scheduling the plurality of content presentation devices to receive requested supplemental content based in part on the supplemental content processing times comprises scheduling the plurality of content presentation devices to receive requested supplemental content according to supplemental content processing times and adjusted advertisement start times.

19. The computing system according to claim 18 , wherein the set of operations further comprise:

determining an occurrence of a pause operation on a particular content presentation device during which program presentation is paused, and a duration of the pause operation; and

determining the adjusted advertisement start time as a sum of the advertisement start time specified in the program schedule and the duration of the pause operation.

20. The computing system according to claim 18 , wherein the set of operations further comprise:

determining, by the processor and based on the supplemental content processing time and the advertisement start time, that a particular request for supplemental content cannot be delivered before the scheduled advertisement start time; and

responsive to determining that the supplemental content cannot be delivered before the scheduled advertisement start time, canceling the particular request.

Assignments (3)
SECURITY INTEREST Recorded Sep 18, 2024
From: ROKU, INC.
To: CITIBANK, N.A.
Reel/Frame 068982/0377 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2021
From: GROVER, MATTHEW GEORGE
To: THE NIELSEN COMPANY (US), LLC
Reel/Frame 057832/0158 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2021
From: THE NIELSEN COMPANY (US), LLC
To: ROKU, INC.
Reel/Frame 057856/0824 →