IP Library Granted Patent US 11,757,964
Granted Patent B2
US 11,757,964 · App. 16/130,637 · Granted Sep 12, 2023

Providing third-party dynamic content within adaptive streaming video

Inventors: Michael Gordon (Paradise Valley, AZ); David Morel (Tempe, AZ)
Assignee: DLVR, Inc.
H04L65/75H04L63/062H04L65/612H04L65/80H04L67/02H04N21/222H04N21/23439H04N21/2402H04N21/2662H04N21/8456H04N21/8586
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,757,964
App. No.
16/130,637
Granted
Sep 12, 2023
Kind
B2
Abstract

Techniques for serving a manifest file of an adaptive streaming video include receiving a request for the manifest file from a user device. The video is encoded at different reference bitrates and each encoded reference bitrate is divided into segments to generate video segment files. The manifest file includes an ordered list of universal resource locators (URLs) that reference a set of video segment files encoded at a particular reference bitrate. A source manifest file that indicates the set of video segment files is identified based on the request. An issued manifest file that includes a first URL and a second URL is generated based on the source manifest file. The first URL references a first domain and the second URL references a second domain that is different from the first domain. The issued manifest file is transmitted to the user device as a response to the request.

Claims (75)

1. A system for configuring manifest files and serving video segment files having one or more computer servers, the computer servers of the system for configuring manifest files and serving video segment files comprising:

one or more processing units each including at least one processor; and

one or more memory units coupled with and readable by the processing units and storing therein instructions which, when executed by the processing units, cause the system for configuring manifest files and serving video segment files to:

receive one or more requests, from a user device, for one or more video segment files, wherein the requests for the video segment files are made in accordance with a manifest file corresponding to an adaptive streaming video;

transmit the one or more requested video segment files to the user device, in response to the one or more requests;

prior to receiving an expected content request and after receive the one or more requests for the one or more video segment files, determine, based on the manifest file, that the requested video segment files immediately precede content of the expected content request, wherein the expected content request is for third-party content not determined by the system for configuring manifest files and serving video segment files, wherein the third-party content is distinct from the video segment files;

prior to receiving the expected content request, in response to determining that, according to the manifest file, the requested video segment files immediately precede the content of the expected content request, transmit a request for dynamic third-party content to a third-party content service, the request for dynamic third-party content requesting a uniform resource locator (URL) corresponding to the dynamic third-party content for the expected content request, wherein the request for dynamic third-party content comprises direction for the third-party content service to select and return dynamic content for the user device;

receive, from the third-party content service, a URL corresponding to the dynamic third-party content for the expected content request;

download the dynamic third-party content for the expected content request;

receive, from the user device, the expected content request, the expected content request being made in accordance with the manifest file, and requesting the dynamic third-party content; and

respond to the expected content request by transmitting the dynamic third-party content to the user device.

2. The system for configuring manifest files and serving video segment files of claim 1 , wherein determining that the requested video segment files immediately precede the content of the expected content request comprises:

in response to receiving a first request from the user device for a first video segment file, determining that the first request immediately precedes the request for dynamic third-party content within the manifest file.

3. The system for configuring manifest files and serving video segment files of claim 1 , wherein determining that the requested video segment files immediately precede the content of the expected content request comprises:

determining that the manifest file being used by the user device includes an interspersing pattern of URLs, in which a first set of URLs to be served by the system are interspersed within a second set of URLs to be served by a second system for serving video segment files operated separately and independently from the system; and

in response to receiving a first request from the user device for a first video segment file, determining that the next request from the manifest file to be served by the system is the request for dynamic third-party content.

4. The system for configuring manifest files and serving video segment files of claim 1 , the one or more memory units storing additional instructions therein which, when executed by the processing units, further cause the system to:

prior to receiving any requests from the user device for video segment files in accordance with a manifest file, configure the manifest file by:

receiving an initial manifest file including one or more URLs referencing a dynamic third-party content service; and

replacing, within the initial manifest file, the one or more URLs referencing the dynamic third-party content service, with one or more replacement URLs referencing a computer server within the system.

5. The system for configuring manifest files and serving video segment files of claim 1 , wherein determining that the requested video segment files immediately precede the content of the expected content request comprises:

accessing a local copy of the manifest file being used by the user device to retrieve the adaptive streaming video.

6. The system for configuring manifest files and serving video segment files of claim 1 , wherein determining that the requested video segment files immediately precede the content of the expected content request comprises:

receiving, from at least one of a manifest file generator or a content publisher, one or more locations of the dynamic third-party content within the manifest file being used by the user device to retrieve the adaptive streaming video.

7. The system for configuring manifest files and serving video segment files of claim 1 , wherein transmitting the request for dynamic third-party content to the third-party content service comprises:

extracting at least one header value or parameter, from the one or more requests received from the user device for video segment files; and

embedding the at least one header value or parameter from the user device, into the request for dynamic third-party content.

8. A method of providing dynamic third-party content within adaptive streaming video, the method comprising:

receiving, by a computer system for configuring manifest files and serving video segment files comprising one or more processors, one or more requests from a user device for one or more video segment files, wherein the requests for the video segment files are made in accordance with a manifest file corresponding to an adaptive streaming video;

transmitting, by the computer system, the one or more requested video segment files to the user device, in response to the one or more requests;

prior to receiving an expected content request and after receive the one or more requests for the one or more video segment files, determining, based on the manifest file, by the computer system, that the requested video segment files immediately precede content of the expected content request, wherein the content of the expected content request is not determined by the computer system, and wherein the expected content request is for third-party content is distinct from the video segment files;

prior to receiving the expected content request, in response to determining that, according to the manifest file, the requested video segment files immediately precede the content of the expected content request, transmitting, by the computer system, a request for dynamic third-party content to a third-party content service for a uniform resource locator (URL) corresponding to the dynamic third-party content for the expected content request, wherein the request for dynamic third-party content comprises a direction for the third-party content service to select and return dynamic content for the user device;

receiving, by the computer system and from the third-party content service, a URL corresponding to the dynamic third-party content for the expected content request;

downloading, by the computer system, the dynamic third-party content;

receiving, by the computer system and from the user device, the expected content request; and

transmitting, by the computer system, the dynamic third-party content to the user device.

9. The method providing third-party dynamic content within adaptive streaming video of claim 8 , wherein determining that the requested video segment files immediately precede content of the expected content request comprises:

in response to receiving a first request from the user device for a first video segment file, determining that the first request immediately precedes the request for dynamic third-party content within the manifest file.

10. The method providing third-party dynamic content within adaptive streaming video of claim 8 , wherein determining that the requested video segment files immediately precede content of the expected content request comprises:

determining that the manifest file being used by the user device includes an interspersing pattern of URLs, in which a first set of URLs to be served by the computer system are interspersed within a second set of URLs to be served by a second computer system for serving video segment files operated separately and independently from the computer system; and

in response to receiving a first request from the user device for a first video segment file, determining that the next request from the manifest file to be served by the computer system is the request for dynamic third-party content.

11. The method providing third-party dynamic content within adaptive streaming video of claim 8 , further comprising:

prior to receiving any requests from the user device for video segment files in accordance with a manifest file, configuring the manifest file by:

receiving an initial manifest file including one or more URLs referencing a dynamic third-party content service; and

replacing, within the initial manifest file, the one or more URLs referencing the dynamic third-party content service, with one or more replacement URLs referencing a computer server within the computer system.

12. The method providing third-party dynamic content within adaptive streaming video of claim 8 , wherein determining that the requested video segment files immediately precede content of the expected content request comprises:

accessing a local copy of the manifest file being used by the user device to retrieve the adaptive streaming video.

13. The method providing third-party dynamic content within adaptive streaming video of claim 8 , wherein determining that the requested video segment files immediately precede content of the expected content request comprises:

receiving, from at least one of a manifest file generator or a content publisher, one or more locations of the dynamic third-party content within the manifest file being used by the user device to retrieve the adaptive streaming video.

14. The method providing third-party dynamic content within adaptive streaming video of claim 8 , wherein transmitting the request for dynamic third-party content comprises:

extracting at least one header value or parameter, from the one or more requests received from the user device for video segment files; and

embedding the at least one header value or parameter from the user device, into the request for dynamic third-party content.

15. One or more non-transitory computer-readable media, comprising computer-executable instructions, which when executed within a computer system for configuring manifest files and serving video segment files, cause the computer system to:

receive one or more requests, from a user device, for one or more video segment files, wherein the requests for the video segment files are made in accordance with a manifest file corresponding to an adaptive streaming video;

transmit the one or more requested video segment files to the user device, in response to the one or more requests;

prior to receiving an expected content request and after receive the one or more requests for the one or more video segment files, determine, based on the manifest file, that the requested video segment files immediately precede content of the expected content request, wherein the expected content request is for third party content not determined by the computer system, wherein the third-party content is distinct from the video segment files;

prior to receiving the expected content request, in response to determining that, according to the manifest file, the requested video segment files immediately precede the content of the expected content request, transmit a request for dynamic third-party content to a third-party content service, the request for dynamic third-party content requesting a uniform resource locator (URL) corresponding to the dynamic third-party content for the expected content request, wherein the request for dynamic third-party content comprises a direction for the third-party content service to select and return dynamic content for the user device;

receive, from the third-party content service, a URL corresponding to the dynamic third-party content for the expected content request;

download the dynamic third-party content for the expected content request;

receive, from the user device, the expected content request, the expected content request being made in accordance with the manifest file, and requesting the dynamic third-party content; and

respond to the expected content request by transmitting the dynamic third-party content to the user device.

16. The non-transitory computer-readable media of claim 15 , wherein determining that the requested video segment files immediately precede the content of the expected content request comprises:

in response to receiving a first request from the user device for a first video segment file, determining that the first request immediately precedes the request for dynamic third-party content within the manifest file.

17. The non-transitory computer-readable media of claim 15 , wherein determining that the requested video segment files immediately precede the content of the expected content request comprises:

determining that the manifest file being used by the user device includes an interspersing pattern of URLs, in which a first set of URLs to be served by the computer system are interspersed within a second set of URLs to be served by a second computer system for serving video segment files operated separately and independently from the computer system; and

in response to receiving a first request from the user device for a first video segment file, determining that the next request from the manifest file to be served by the computer system is the request for dynamic third-party content.

18. The non-transitory computer-readable media of claim 15 , comprising further computer-executable instructions, which when executed by the computer system for configuring manifest files and serving video segment files, cause the computer system to:

prior to receiving any requests from the user device for video segment files in accordance with a manifest file, configure the manifest file by:

receiving an initial manifest file including one or more URLs referencing a dynamic third-party content service; and

replacing, within the initial manifest file, the one or more URLs referencing the dynamic third-party content service, with one or more replacement URLs referencing a computer server within the computer system for configuring manifest files and serving video segment files.

19. The non-transitory computer-readable media of claim 15 , wherein determining that the requested video segment files immediately precede the content of the expected content request comprises:

accessing a local copy of the manifest file being used by the user device to retrieve the adaptive streaming video.

20. The non-transitory computer-readable media of claim 15 , wherein transmitting the request for dynamic third-party content comprises

extracting at least one header value or parameter, from the one or more requests received from the user device for video segment files; and

embedding the at least one header value or parameter from the user device, into the request for dynamic third-party content.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2025
From: DLVR, INC.
To: ADEIA MEDIA HOLDINGS LLC
Reel/Frame 071414/0658 →
CONVERSION Recorded Jun 13, 2025
From: ADEIA MEDIA HOLDINGS LLC
To: ADEIA MEDIA HOLDINGS INC.
Reel/Frame 071574/0546 →
SECURITY INTEREST Recorded May 28, 2025
From: ADEIA INC. (F/K/A XPERI HOLDING CORPORATION); ADEIA HOLDINGS INC.; ADEIA MEDIA HOLDINGS INC.; ADEIA IMAGING LLC; ADEIA MEDIA LLC; ADEIA MEDIA SOLUTIONS INC.; ADEIA SEMICONDUCTOR BONDING TECHNOLOGIES INC.; ADEIA TECHNOLOGIES INC.; ADEIA GUIDES INC.; ADEIA SOLUTIONS LLC; ADEIA SEMICONDUCTOR ADVANCED TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR SOLUTIONS LLC; ADEIA SEMICONDUCTOR INTELLECTUAL PROPERTY LLC; ADEIA SEMICONDUCTOR TECHNOLOGIES LLC; ADEIA PUBLISHING INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 071454/0343 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2019
From: GORDON, MICHAEL; MOREL, DAVID
To: DLVR, INC.
Reel/Frame 048367/0179 →
Cited By (5)
US 12,542,955 US 12,581,172 US 12,587,698 US 12,592,864 US 12,593,081