IP Library Granted Patent US 12,470,615
Granted Patent B2
US 12,470,615 · App. 18/419,523 · Granted Nov 11, 2025

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 12,470,615
App. No.
18/419,523
Granted
Nov 11, 2025
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 (52)

1 . A method comprising:

sending, by a user device, a request pertaining to a plurality of segments of a content stream, the request comprising an identifier associated with the content stream;

receiving, from a content delivery network (CDN), recent segment files corresponding to a recent segment of the plurality of segments of the content stream, the recent segment files comprising a first audio segment file and a first video segment file;

detecting, by the user device, a mismatch between the first audio segment file and the first video segment file;

sending, by the user device, a request for a next segment of the plurality of segments of the content stream;

receiving, from the CDN, next segment files corresponding to the next segment of the plurality of segments of the content stream, the next segment files comprising a second audio segment file and a second video segment file; and

responsive to determining a match between the second audio segment file and the second video segment file, loading the second audio segment file and the second video segment file for playback at the user device.

2 . The method of claim 1 , wherein detecting a mismatch between the first audio segment file and the first video segment file comprises detecting a mismatch between a sequence number of the first audio segment file and a sequence number of the first video segment file.

3 . The method of claim 2 , wherein the sequence number of the first audio segment file is extracted from metadata of the first audio segment file and a sequence number of the first video segment file is extracted from metadata of the first video segment file.

4 . The method of claim 2 , wherein sending the request for the next segment of the plurality of segments of the content stream comprises:

determining a highest sequence number between the sequence number of the first audio segment file and the sequence number of the first video segment file;

incrementing the highest sequence number; and

including the incremented sequence number in the request for the next segment of the plurality of segments of the content stream.

5 . The method of claim 1 , wherein the content stream is a live stream and the request for the next segment is sent by the user device before any next segments are available at the CDN.

6 . The method of claim 5 , wherein the next segment files corresponding to the next segment are received from the CDN after a predetermined duration.

7 . The method of claim 1 , further comprising:

receiving a third video segment file;

determining that the third video segment file matches the first audio segment file; and

loading the first audio segment file and the third video segment file for playback at the user device.

8 . The method of claim 1 , wherein the user device sends requests for segments of the content stream without having a manifest file for the content stream.

9 . The method of claim 1 , wherein the identifier associated with the content stream is a uniform resource locator (URL).

10 . The method of claim 9 , wherein the URL comprises a base URL that corresponds to a first format of a plurality of formats of the content stream, and one or more URL parameters to indicate a sequence number associated with the request pertaining to the plurality of segments of the content stream.

11 . The method of claim 10 , wherein the base URL corresponding to the first format is used to locate a head segment file for the first format, wherein the head segment file corresponds to a most recent segment of the content stream that is available at the CDN.

12 . A system comprising:

a memory; and

processing device, coupled to the memory, to perform operations comprising:

sending, by a user device, a request pertaining to a plurality of segments of a content stream, the request comprising an identifier associated with the content stream;

receiving, from a content delivery network (CDN), recent segment files corresponding to a recent segment of the plurality of segments of the content stream, the recent segment files comprising a first audio segment file and a first video segment file;

detecting, by the user device, a mismatch between the first audio segment file and the first video segment file;

sending, by the user device, a request for a next segment of the plurality of segments of the content stream;

receiving, from the CDN, next segment files corresponding to the next segment of the plurality of segments of the content stream, the next segment files comprising a second audio segment file and a second video segment file; and

responsive to determining a match between the second audio segment file and the second video segment file, loading the second audio segment file and the second video segment file for playback at the user device.

13 . The system of claim 12 , wherein detecting a mismatch between the first audio segment file and the first video segment file comprises detecting a mismatch between a sequence number of the first audio segment file and a sequence number of the first video segment file.

14 . The system of claim 13 , wherein the sequence number of the first audio segment file is extracted from metadata of the first audio segment file and a sequence number of the first video segment file is extracted from metadata of the first video segment file.

15 . The system of claim 14 , wherein sending the request for the next segment of the plurality of segments of the content stream comprises:

determining a highest sequence number between the sequence number of the first audio segment file and the sequence number of the first video segment file;

incrementing the highest sequence number; and

including the incremented sequence number in the request for the next segment of the plurality of segments of the content stream.

16 . The system of claim 12 , the operations further comprising:

receiving a third video segment file;

determining that the third video segment file matches the first audio segment file; and

loading the first audio segment file and the third video segment file for playback at the user device.

17 . The system of claim 12 , wherein the user device sends requests for segments of the content stream without having a manifest file for the content stream.

18 . A non-transitory computer-readable medium containing instructions that, when executed by a processing device, cause the processing device to perform operations comprising:

sending, by a user device, a request pertaining to a plurality of segments of a content stream, the request comprising an identifier associated with the content stream;

receiving, from a content delivery network (CDN), recent segment files corresponding to a recent segment of the plurality of segments of the content stream, the recent segment files comprising a first audio segment file and a first video segment file;

detecting, by the user device, a mismatch between the first audio segment file and the first video segment file;

sending, by the user device, a request for a next segment of the plurality of segments of the content stream;

receiving, from the CDN, next segment files corresponding to the next segment of the plurality of segments of the content stream, the next segment files comprising a second audio segment file and a second video segment file; and

responsive to determining a match between the second audio segment file and the second video segment file, loading the second audio segment file and the second video segment file for playback at the user device.

19 . The non-transitory computer-readable medium of claim 18 , wherein detecting a mismatch between the first audio segment file and the first video segment file comprises detecting a mismatch between a sequence number of the first audio segment file and a sequence number of the first video segment file.

20 . The non-transitory computer-readable medium of claim 19 , wherein the sequence number of the first audio segment file is extracted from metadata of the first audio segment file and a sequence number of the first video segment file is extracted from metadata of the first video segment file.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2024
From: SCHMELCHER, TRISTAN; CYR, WILLIAM; DEWEESE, THOMAS; KRAHNSTOEVER, NILS; CARSON, MATTHEW; JURCZYK, PAWEL; DINGER, THOMAS; CALOW, JEFFREY
To: GOOGLE LLC
Reel/Frame 066299/0940 →
Continuity (5)
Continuation 18096737 · Jan 13, 2023
Continuation 17233963 · Apr 19, 2021
Continuation 16573090 · Sep 17, 2019
Provisional Application 62732567 · Sep 17, 2018
Related Publication 20240163322A1 · May 16, 2024
References Cited (50)
US 9118976B1 · Reed et al. · 2015 [cited by applicant]
US 10346474B1 · Kalampoukas · 2019 [cited by examiner]
US 11558443B2 · Schmelcher et al. · 2023 [cited by applicant]
US 20040252761A1 · Brown · 2004 [cited by examiner]
US 20110219098A1 · Xu et al. · 2011 [cited by applicant]
US 20130091521A1 · Phillips · 2013 [cited by examiner]
US 20130162902A1 · Musser, Jr. · 2013 [cited by examiner]
US 20130166625A1 · Swaminathan et al. · 2013 [cited by applicant]
US 20130227074A1 · Odlund et al. · 2013 [cited by applicant]
US 20130332971A1 · Fisher · 2013 [cited by applicant]
US 20140281010A1 · Panje et al. · 2014 [cited by applicant]
US 20150032855A1 · Wang et al. · 2015 [cited by applicant]
US 20150195327A1 · Bouazizi et al. · 2015 [cited by applicant]
US 20150296274A1 · Good et al. · 2015 [cited by applicant]
US 20150365450A1 · Gaunt et al. · 2015 [cited by applicant]
US 20170026687A1 · Bouwknegt · 2017 [cited by examiner]
US 20170272485A1 · Gordon et al. · 2017 [cited by applicant]
US 20180183890A1 · Patil · 2018 [cited by applicant]
CN 103392344A · 2013 [cited by applicant]
CN 103491457A · 2014 [cited by applicant]
CN 103858440A · 2014 [cited by applicant]
CN 104396263A · 2015 [cited by applicant]
CN 105052160A · 2015 [cited by applicant]
CN 105409226A · 2016 [cited by applicant]
CN 106464945A · 2017 [cited by applicant]
CN 107948734A · 2018 [cited by examiner]
CN 108432261A · 2018 [cited by applicant]
CN 108924646A · 2018 [cited by examiner]
JP 2000307637A · 2000 [cited by applicant]
JP 2014007603A · 2014 [cited by applicant]
JP 2015023575A · 2015 [cited by applicant]
JP 2018085764A · 2018 [cited by applicant]
WO 2011010254A1 · 2011 [cited by applicant]
WO 2015013687A1 · 2015 [cited by applicant]
Office Action for Japanese Patent Application No. 202443842, mailed Mar. 18, 2025, 03 Pages. * Best Available copy*. [cited by applicant]
Examination Report issued in IN Application No. 202147016975 dated Feb. 7, 2022, 5 pages. [cited by applicant]
International Search Report and Written Opinion for International Application No. PCT/US2019/051433, mailed Nov. 6, 2019, 13 Pages. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 17/233,963, mailed Jun. 9, 2022, 8 Pages. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 16/573,090, mailed Dec. 16, 2020, 8 Pages. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 17/233,963, mailed Sep. 14, 2022, 7 Pages. [cited by applicant]
Office Action for Chinese Patent Application No. 201980017813.2, mailed Sep. 22, 2021, 11 Pages. [cited by applicant]
Office Action for Chinese Patent Application No. 201980017813.2, mailed May 31, 2022, 7 Pages. [cited by applicant]
Office Action for Japanese Patent Application No. 2021-514587, mailed Oct. 18, 2021, 9 Pages. [cited by applicant]
Office Action for Japanese Patent Application No. 2022078249, mailed Aug. 21, 2023, 8 Pages. [cited by applicant]
Notice of Allowance for Japanese Patent Application No. JP2022078249, mailed Feb. 19, 2024, 3 Pages (Best available copy). [cited by applicant]
Office Action for Korean Patent Application No. 10-2020-7026227, mailed Sep. 27, 2021, 10 Pages. [cited by applicant]
Office Action for Korean Patent Application No. 10-2022-7026318, mailed May 4, 2023, 7 Pages. [cited by applicant]
Office Action for Chinese Patent Application No. 202210960126.8, mailed Dec. 26, 2024, 15 Pages. [cited by applicant]
Office Action for Indian Patent Application No. 202147016975 , mailed Nov. 1, 2024, 3 Pages. [cited by applicant]
Office Action of Korean Patent Application No. 20247006908, mailed Dec. 3, 2024, 9 Pages. [cited by applicant]