IP Library Granted Patent US 11,882,168
Granted Patent B2
US 11,882,168 · App. 18/096,737 · Granted Jan 23, 2024

Methods, systems, and media for delivering manifestless streaming media content

Inventors: Tristan Schmelcher (Sammamish, WA); William Cyr (Boston, MA); Thomas DeWeese (Boxborough, MA); Nils Krahnstoever (Brookline, MA); Matthew Carson (San Francisco, CA); Pawel Jurczyk (Newton, MA); Thomas Dinger (Waltham, MA); Jeffrey Calow (Arlington, MA)
Assignee: Google LLC
H04L65/613H04L65/612H04N21/2187H04N21/84H04N21/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,882,168
App. No.
18/096,737
Granted
Jan 23, 2024
Kind
B2
Abstract

Methods, systems, and media for delivering manifestless streaming media content are provided. In some embodiments, the method comprises: receiving, from a user device, a request for a URL corresponding to a format of a live stream that is provided in a plurality of formats, wherein the live stream comprises a plurality of segments for each of the plurality of formats; resolving the request to a specific segment of the live stream based on the URL, wherein the resolving comprises: identifying the format of the live stream associated with the request from the plurality of formats based on the URL; and identifying a segment of the plurality of segments corresponding to the identified format to the user device in a response to the request.

Claims (37)

1. A method for delivering streaming content, the method comprising:

receiving, from a user device that is requesting a content stream, a request for a URL that corresponds to a format of the content stream, wherein the content stream is composed of a plurality of segments that are each available to be provided to the user device in one of a plurality of formats;

resolving the request for a specific segment of the content stream by identifying the format of the content stream associated with the request from the plurality of formats based on the URL; and

transmitting a segment file corresponding to the specific segment to the user device in a response to the request.

2. The method of claim 1 , wherein the URL comprises a base URL, and wherein the format of the content stream associated with the request is identified from the plurality of formats based on the base URL.

3. The method of claim 1 , further comprising identifying a sequence number associated with the request based on the URL, wherein the segment file comprises metadata indicating the identified sequence number.

4. The method of claim 3 , further comprising identifying a segment of the plurality of segments corresponding to the identified format and having a sequence number matching the identified sequence number.

5. The method of claim 4 , wherein the sequence number is identified by determining a current head sequence number for a most recent segment that is available for playback of the one or more segments, wherein the identified sequence number is the current head sequence number and wherein the identified segment is the most recent segment that is available for playback.

6. The method of claim 3 , wherein the sequence number is identified by identifying a sequence number associated with the request that is greater than a sequence number for a most recently complete segment that is available to load based on the URL.

7. The method of claim 6 , further comprising:

iteratively loading one or more portions of the segment file as the one or more portions are being generated; and

iteratively returning the generated one or more portions to the user device in a single response.

8. A system for delivering streaming content, the system comprising:

a hardware processor that:

receives, from a user device that is requesting a content stream, a request for a URL that corresponds to a format of the content stream, wherein the content stream is composed of a plurality of segments that are each available to be provided to the user device in one of a plurality of formats;

resolves the request for a specific segment of the content stream by identifying the format of the content stream associated with the request from the plurality of formats based on the URL; and

transmits a segment file corresponding to the specific segment to the user device in a response to the request.

9. The system of claim 8 , wherein the URL comprises a base URL, and wherein the format of the content stream associated with the request is identified from the plurality of formats based on the base URL.

10. The system of claim 8 , wherein the hardware processor further identifies a sequence number associated with the request based on the URL, wherein the segment file comprises metadata indicating the identified sequence number.

11. The system of claim 10 , wherein the hardware processor further identifies a segment of the plurality of segments corresponding to the identified format and having a sequence number matching the identified sequence number.

12. The system of claim 11 , wherein the sequence number is identified by determining a current head sequence number for a most recent segment that is available for playback of the one or more segments, wherein the identified sequence number is the current head sequence number and wherein the identified segment is the most recent segment that is available for playback.

13. The system of claim 10 , wherein the sequence number is identified by identifying a sequence number associated with the request that is greater than a sequence number for a most recently complete segment that is available to load based on the URL.

14. The system of claim 13 , wherein the hardware processor further:

iteratively loads one or more portions of the segment file as the one or more portions are being generated; and

iteratively returns the generated one or more portions to the user device in a single response.

15. A non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor, cause the processor to perform a method for delivering streaming content, the method comprising:

receiving, from a user device that is requesting a content stream, a request for a URL that corresponds to a format of the content stream, wherein the content stream is composed of a plurality of segments that are each available to be provided to the user device in one of a plurality of formats;

resolving the request for a specific segment of the content stream by identifying the format of the content stream associated with the request from the plurality of formats based on the URL; and

transmitting a segment file corresponding to the specific segment to the user device in a response to the request.

16. The non-transitory computer-readable medium of claim 15 , wherein the URL comprises a base URL, and wherein the format of the content stream associated with the request is identified from the plurality of formats based on the base URL.

17. The non-transitory computer-readable medium of claim 15 , wherein the method further comprises identifying a sequence number associated with the request based on the URL, wherein the segment file comprises metadata indicating the identified sequence number.

18. The non-transitory computer-readable medium of claim 17 , wherein the method further comprises identifying a segment of the plurality of segments corresponding to the identified format and having a sequence number matching the identified sequence number.

19. The non-transitory computer-readable medium of claim 18 , wherein the sequence number is identified by determining a current head sequence number for a most recent segment that is available for playback of the one or more segments, wherein the identified sequence number is the current head sequence number and wherein the identified segment is the most recent segment that is available for playback.

20. The non-transitory computer-readable medium of claim 17 , wherein the sequence number is identified by identifying a sequence number associated with the request that is greater than a sequence number for a most recently complete segment that is available to load based on the URL.

21. The non-transitory computer-readable medium of claim 20 , wherein the method further comprises:

iteratively loading one or more portions of the segment file as the one or more portions are being generated; and

iteratively returning the generated one or more portions to the user device in a single response.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 7, 2023
From: SCHMELCHER, TRISTAN; CYR, WILLIAM; DEWEESE, THOMAS; KRAHNSTOEVER, NILS; CARSON, MATTHEW; JURCZYK, PAWEL; DINGER, THOMAS; CALOW, JEFFREY
To: GOOGLE LLC
Reel/Frame 065804/0947 →
Continuity (4)
Continuation 17233963 · Apr 19, 2021
Continuation 16573090 · Sep 17, 2019
Provisional Application 62732567 · Sep 17, 2018
Related Publication 20230144953A1 · May 11, 2023