Patentable/Patents/US-10609104
US-10609104

Live stream manifests for on demand content

PublishedMarch 31, 2020
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

Disclosed are various embodiments for selecting fragments of a media item. An estimated bandwidth for a client is calculated. A confidence score for the estimated bandwidth is determined. When the confidence score falls below a threshold, the estimated bandwidth is modified. A fragment for the media item is selected using the modified estimated bandwidth.

Patent Claims
20 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A non-transitory computer-readable medium embodying a program that, when executed in at least one computing device, causes the at least one computing device to at least: calculate an estimated bandwidth for a client based at least in part on a buffer state and a stream history; calculate a confidence score for the estimated bandwidth; determine that the confidence score falls below a threshold; in response to determining that the confidence score falls below the threshold, determine a modified estimated bandwidth by modifying the estimated bandwidth; and select a fragment for a video content feature based at least in part on the modified estimated bandwidth.

2

2. The non-transitory computer-readable medium of claim 1 , wherein the program further causes the at least one computing device to at least: determine that the fragment fails to satisfy at least one override rule; and in response to determining that the fragment fails to satisfy the at least one override rule, select a different content fragment based at least in part on the at least one override rule.

3

3. The non-transitory computer-readable medium of claim 1 , wherein the program further causes the at least one computing device to at least determine that the fragment satisfies at least one override rule, wherein the at least one override rule is satisfied based on at least one of: the estimated bandwidth, a device type of the client, and a selected bit rate for a source.

4

4. The non-transitory computer-readable medium of claim 1 , wherein the program further causes the at least one computing device to at least select a source for the fragment of the video content feature.

5

5. The non-transitory computer-readable medium of claim 1 , wherein the buffer state comprises a change in a duration of content stored in a buffer of the client.

6

6. The non-transitory computer-readable medium of claim 5 , wherein the program further causes the at least one computing device to at least adjust the estimated bandwidth based at least in part on the change in the duration.

7

7. A system, comprising: a memory embodying a program; and at least one computing device in communication with the memory, the at least one computing device being configured, through execution of the program, to at least: determine an estimated bandwidth for a client; calculate a confidence score for the estimated bandwidth; in response to determining that the confidence score falls below a threshold, determine a modified estimated bandwidth based at least in part on adjusting the estimated bandwidth as a function of the confidence score; and stream a fragment of a video content feature to the client based at least in part on the modified estimated bandwidth.

8

8. The system of claim 7 , wherein the at least one computing device is further configured to at least: receive a buffer state from the client; determine that a rate of change of bandwidth fails to meet a predefined threshold based at least in part on the buffer state; in response to the rate of change failing to meet the predefined threshold, determine an updated estimated bandwidth that is equal to the modified estimated bandwidth; and select a subsequent fragment for the video content feature based at least in part on the updated estimated bandwidth.

9

9. The system of claim 7 , wherein the at least one computing device is further configured to at least determine that the fragment satisfies an override rule.

10

10. The system of claim 9 , wherein the override rule specifies a bit rate for a content stream to a particular client type.

11

11. The system of claim 9 , wherein the override rule restricts a selection of a particular bit rate for fragments encoded using a particular codec.

12

12. The system of claim 7 , wherein the estimated bandwidth is determined as a running average.

13

13. The system of claim 7 , wherein the estimated bandwidth is determined as an exponential weighted average of a plurality of data points.

14

14. A method, comprising: calculating, via at least one computing device, an estimated bandwidth for a client based at least in part on a buffer state and a stream history; calculating, via the at least one computing device, a confidence score for the estimated bandwidth; determining, via the at least one computing device, that the confidence score falls below a threshold; in response to determining that the confidence score falls below the threshold, determining, via the at least one computing device, a modified estimated bandwidth by modifying the estimated bandwidth; and selecting, via the at least one computing device, a source of a fragment of a video content feature based at least in part on the modified estimated bandwidth.

15

15. The method of claim 14 , further comprising: generating, via the at least one computing device, a manifest indicating the source; and communicating, via the at least one computing device, the manifest to the client.

16

16. The method of claim 15 , further comprising: determining, via the at least one computing device, whether the video content feature has ended subsequent to the manifest being communicated to the client; in response to determining that the video content feature has not ended, obtaining, via the at least one computing device, an updated buffer state from the client; and calculating, via the at least one computing device, an updated estimated bandwidth for the client based at least in part on the updated buffer state and the stream history.

17

17. The method of claim 14 , further comprising selecting, via the at least one computing device, the fragment for the video content feature based at least in part on the modified estimated bandwidth.

18

18. The method of claim 14 , further comprising streaming, via the at least one computing device, the fragment of the video content feature to the client.

19

19. The method of claim 14 , further comprising updating, via the at least one computing device, the stream history with at least one attribute corresponding to the source.

20

20. The method of claim 14 , further comprising, in response to determining that the fragment fails to satisfy at least one override rule, selecting, via the at least one computing device, a different fragment based at least in part on the at least one override rule.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

May 2, 2018

Publication Date

March 31, 2020

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Live stream manifests for on demand content” (US-10609104). https://patentable.app/patents/US-10609104

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.