IP Library Granted Patent US 11,297,385
Granted Patent B1
US 11,297,385 · App. 17/146,569 · Granted Apr 5, 2022

Content-modification system with feature for managing multiple content-modification requests

Inventors: Stefanos Christakis Liassides (Cardiff, GB); Brian Patrick Jentz (Buxton, GB)
Assignee: Roku, Inc.
H04N21/44016H04N21/42607H04N21/458H04N21/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,297,385
App. No.
17/146,569
Granted
Apr 5, 2022
Kind
B1
Abstract

In one aspect, a method includes receiving a first request for first supplemental content for use by a content-presentation device in performing a first content-modification operation, receiving a second request for second supplemental content for use by a tuner device in performing a second content-modification operation. The method also includes determining that the content-presentation device is connected to the tuner device, and based at least in part on the first and second requests, determining that the first and second requests are associated with the same modifiable content-segment, and, in response to the determinations, using one or more parameters as a basis to select for performance an action from a set of actions including a first action that facilitates performance of the first content-modification operation and a second action that facilitates performance of the second content-modification operation.

Claims (75)

1. A method comprising:

receiving a first request for first supplemental content for use by a content-presentation device in performing a first content-modification operation relative to a modifiable content-segment that the content-presentation device is scheduled to receive;

receiving a second request for second supplemental content for use by a tuner device in performing a second content-modification operation relative to a modifiable content-segment that the tuner device is scheduled to receive;

determining that the content-presentation device is connected to the tuner device;

based at least in part on the first and second requests, determining that the first and second requests are associated with the same modifiable content-segment;

in response to determining that the content-presentation device is connected to the tuner device, and further in response to determining that the first and second requests are associated with the same modifiable content-segment, using one or more parameters as a basis to select an action from a set of actions that includes a first action that facilitates causing the content-presentation device to perform the first content-modification operation in accordance with the first request and a second action that facilitates causing the tuner device to perform the second content-modification operation in accordance with the second request; and

performing the selected action.

2. The method of claim 1 , wherein the first content-modification operation is scheduled to be performed by the content-presentation device at a modification start-time, and

wherein the second content-modification operation is scheduled to be performed by the tuner device before the scheduled modification start-time.

3. The method of claim 1 , wherein the content-presentation device is part of a content-modification system, and

wherein the tuner device is a set-top box (STB) that is not part of the content-modification system and that is associated with a multi-channel video program distributor (MVPD).

4. The method of claim 1 , further comprising:

determining that automatic content recognition (ACR) data generated by the content-presentation device matches at least a portion of return path data stored by the tuner device,

wherein determining that the content-presentation device is connected to the tuner device is based at least in part on the determination that the ACR data matches at least the portion of the return path data.

5. The method of claim 1 , further comprising:

receiving, from the content-presentation device, a device identifier associated with the tuner device; and

determining that the device identifier matches one of a plurality of device identifiers that are each mapped to a corresponding multi-channel video program distributor (MVPD),

wherein determining that the content-presentation device is connected to the tuner device is based at least in part on the determination that the device identifier matches one of the plurality of device identifiers.

6. The method of claim 1 , further comprising:

determining that the first and second requests each identify the same Internet Protocol (IP) address,

wherein determining that the content-presentation device is connected to the tuner device is based at least in part on the determination that the first and second requests each identify the same IP address.

7. The method of claim 1 , further comprising:

determining that the first and second requests each identifies the same content-segment identifier for the modifiable content-segment; and

determining that the first and second requests each identifies one or more of (i) the same transmission time at which a content-distribution system is scheduled to start broadcasting the modifiable content-segment or (ii) the same channel identifier for a channel on which the content-presentation device and the tuner device are each scheduled to receive the modifiable content-segment,

wherein determining that the first and second requests are associated with the same modifiable content-segment is based at least in part on the determination that the first and second requests each identifies the same content-segment identifier for the modifiable content-segment and the determination that the first and second requests each identifies one or more of the same transmission time or the same channel identifier.

8. The method of claim 1 , wherein the first request is received at a first time-point, and

wherein the second request is received at a second time-point,

the method further comprising:

determining that the first and second requests each include the same content-segment identifier for the modifiable content-segment; and

determining that the first time-point is within a predefined threshold time from the second time-point,

wherein determining that the first and second requests are associated with the same modifiable content-segment is based at least in part on the determination that the first and second requests each include the same content-segment identifier for the modifiable content-segment and the determination that the first time-point is within a predefined threshold time from the second time-point.

9. The method of claim 1 , wherein the one or more parameters include one or more of a cost associated with the first and second supplemental content or a number of times content-presentation devices have received and presented the first and second supplemental content.

10. The method of claim 1 , wherein the one or more parameters include a number of times content-presentation devices have received and presented the modifiable content-segment,

wherein the set of actions further includes a third action that facilitates causing neither the content-presentation device nor the tuner device to perform a content-modification operation relative to the modifiable content-segment, and

wherein using the one or more parameters as a basis to select an action from the set of actions comprises selecting the third action when the number of times content-presentation devices have received and presented the modifiable content-segment is below a predefined threshold.

11. The method of claim 1 , wherein the first content-modification operation is a first content-replacement operation in which the modifiable content-segment is replaced with the first supplemental content, and

wherein the second content-modification operation is a second content-replacement operation in which the modifiable content-segment is replaced with the second supplemental content.

12. 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 a first request for first supplemental content for use by a content-presentation device in performing a first content-modification operation relative to a modifiable content-segment that the content-presentation device is scheduled to receive;

receiving a second request for second supplemental content for use by a tuner device in performing a second content-modification operation relative to a modifiable content-segment that the tuner device is scheduled to receive;

determining that the content-presentation device is connected to the tuner device;

based at least in part on the first and second requests, determining that the first and second requests are associated with the same modifiable content-segment;

in response to determining that the content-presentation device is connected to the tuner device, and further in response to determining that the first and second requests are associated with the same modifiable content-segment, using one or more parameters as a basis to select an action from a set of actions that includes a first action that facilitates causing the content-presentation device to perform the first content-modification operation in accordance with the first request and a second action that facilitates causing the tuner device to perform the second content-modification operation in accordance with the second request; and

performing the selected action.

13. The non-transitory computer-readable storage medium of claim 12 , wherein the first content-modification operation is scheduled to be performed by the content-presentation device at a modification start-time, and

wherein the second content-modification operation is scheduled to be performed by the tuner device before the scheduled modification start-time.

14. The non-transitory computer-readable storage medium of claim 12 , wherein the content-presentation device is part of a content-modification system, and

wherein the tuner device is a set-top box (STB) that is not part of the content-modification system and that is associated with a multi-channel video program distributor (MVPD).

15. The non-transitory computer-readable storage medium of claim 12 , the set of operations further comprising:

determining that automatic content recognition (ACR) data generated by the content-presentation device matches at least a portion of return path data stored by the tuner device,

wherein determining that the content-presentation device is connected to the tuner device is based at least in part on the determination that the ACR data matches at least the portion of the return path data.

16. The non-transitory computer-readable storage medium of claim 12 , the set of operations further comprising:

receiving, from the content-presentation device, a device identifier associated with the tuner device; and

determining that the device identifier matches one of a plurality of device identifiers that are each mapped to a corresponding multi-channel video program distributor (MVPD),

wherein determining that the content-presentation device is connected to the tuner device is based at least in part on the determination that the device identifier matches one of the plurality of device identifiers.

17. The non-transitory computer-readable storage medium of claim 12 , the set of operations further comprising:

determining that the first and second requests each identifies the same content-segment identifier for the modifiable content-segment; and

determining that the first and second requests each identifies one or more of (i) the same transmission time at which a content-distribution system is scheduled to start broadcasting the modifiable content-segment or (ii) the same channel identifier for a channel on which the content-presentation device and the tuner device are each scheduled to receive the modifiable content-segment,

wherein determining that the first and second requests are associated with the same modifiable content-segment is based at least in part on the determination that the first and second requests each identifies the same content-segment identifier for the modifiable content-segment and the determination that the first and second requests each identifies one or more of the same transmission time or the same channel identifier.

18. The non-transitory computer-readable storage medium of claim 12 , wherein the first request is received at a first time-point, and

wherein the second request is received at a second time-point,

the set of operations further comprising:

determining that the first and second requests each include the same content-segment identifier for the modifiable content-segment; and

determining that the first time-point is within a predefined threshold time from the second time-point,

wherein determining that the first and second requests are associated with the same modifiable content-segment is based at least in part on the determination that the first and second requests each include the same content-segment identifier for the modifiable content-segment and the determination that the first time-point is within a predefined threshold time from the second time-point.

19. The non-transitory computer-readable storage medium of claim 12 , wherein the one or more parameters include one or more of a cost associated with the first and second supplemental content or a number of times content-presentation devices have received and presented the first and second supplemental content.

20. 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 a first request for first supplemental content for use by a content-presentation device in performing a first content-modification operation relative to a modifiable content-segment that the content-presentation device is scheduled to receive;

receiving a second request for second supplemental content for use by a tuner device in performing a second content-modification operation relative to a modifiable content-segment that the tuner device is scheduled to receive;

determining that the content-presentation device is connected to the tuner device;

based at least in part on the first and second requests, determining that the first and second requests are associated with the same modifiable content-segment;

in response to determining that the content-presentation device is connected to the tuner device, and further in response to determining that the first and second requests are associated with the same modifiable content-segment, using one or more parameters as a basis to select an action from a set of actions that includes a first action that facilitates causing the content-presentation device to perform the first content-modification operation in accordance with the first request and a second action that facilitates causing the tuner device to perform the second content-modification operation in accordance with the second request; and

performing the selected action.

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 Jan 12, 2021
From: LIASSIDES, STEFANOS CHRISTAKIS; JENTZ, BRIAN PATRICK
To: THE NIELSEN COMPANY (US), LLC
Reel/Frame 054886/0394 →