IP Library › Granted Patent US 12,598,351
Granted Patent B2
US 12,598,351 · App. 18/663,287 · Granted Apr 7, 2026

Methods, systems, and apparatuses for scalable content data updating

Inventor: Alexander Giladi (Denver, CO)
Assignee: Comcast Cable Communications, LLC
H04N21/458H04N21/2187H04N21/26291H04N21/437
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,598,351
App. No.
18/663,287
Granted
Apr 7, 2026
Kind
B2
Abstract

Methods, systems, and apparatuses for updating content data are described herein. A single manifest file may be maintained per content item and provided to client devices with an update file. The manifest file each client device receives may not initially facilitate output of content segments. Instead, the manifest file may be a partial manifest file that initializes playback and/or facilitates output of a most-recent content segment(s). The client devices may each determine a playback timeline. And each client device may use the corresponding update file to modify the manifest file based on the determined playback timeline, resulting in a modified manifest file that facilitates output of one or more content segments associated with the playback timeline for that particular client device.

Claims (34)

1 . A method comprising:

receiving, by each computing device of a plurality of computing devices, a manifest file and an update file associated with a content item, wherein each computing device of the plurality of computing devices receives the manifest file and the update file based on a request time associated with that computing device and the content item;

determining, by each computing device of the plurality of computing devices, based on the manifest file and the request time corresponding to that computing device, a playback timeline;

modifying, by each computing device of the plurality of computing devices, based on the update file and the playback timeline corresponding to that computing device, a parameter value in the manifest file indicating a quantity of content segments; and

sending, by each computing device of the plurality of computing devices, based on the quantity of content segments indicated by the modified parameter value in the manifest file associated with that computing device, a request for one or more content segments associated with: the content item and the playback timeline corresponding to that computing device.

2 . The method of claim 1 , wherein the content item comprises a linear content item or a live content item.

3 . The method of claim 1 , wherein the request time is associated with a time that the corresponding computing device, of the plurality of computing devices, requested the content item.

4 . The method of claim 1 , wherein each computing device of the plurality of computing devices is associated with a maximum value for a time-shift buffer associated with that computing device.

5 . The method of claim 4 , wherein the one or more content segments are associated with a playback duration that is less than or equal to the maximum value for the time-shift buffer associated with that computing device.

6 . The method of claim 1 , wherein modifying the manifest file comprises determining, by each computing device of the plurality of computing devices, based on the update file and the playback timeline corresponding to that computing device, at least one portion of the manifest file to be modified, wherein the at least one portion of the manifest file is associated with a quantity of the one or more content segments.

7 . The method of claim 6 , wherein the update file comprises at least one function associated with the quantity of the one or more content segments.

8 . A system comprising:

a plurality of computing devices, wherein each computing device of the plurality of computing devices is configured to:

receive a manifest file and an update file associated with a content item, based on a request time associated with the computing device and the content item;

determine, based on the manifest file and the request time, a playback timeline;

modify, based on the update file and the playback timeline, a parameter value in the manifest file indicating a quantity of content segments; and

send, based on the quantity of content segments indicated by the modified parameter value in the manifest file, a request for one or more content segments associated with: the content item and the playback timeline;

and

at least one second computing device configured to send the one or more content segments.

9 . The system of claim 8 , wherein the content item comprises a linear content item or a live content item.

10 . The system of claim 8 , wherein the request time is associated with a time that the corresponding computing device, of the plurality of computing devices, requested the content item.

11 . The system of claim 8 , wherein each computing device of the plurality of computing devices is associated with a maximum value for a time-shift buffer associated with that computing device.

12 . The system of claim 11 , wherein the one or more content segments are associated with a playback duration that is less than or equal to the maximum value for the time-shift buffer associated with that computing device.

13 . The system of claim 8 , wherein each computing device, of the plurality of computing devices, is further configured to determine, based on the update file and the playback timeline, at least one portion of the manifest file to be modified, wherein the at least one portion of the manifest file is associated with a quantity of the one or more content segments.

14 . The system of claim 13 , wherein the update file comprises at least one function associated with the quantity of the one or more content segments.

15 . A method comprising:

sending, to each computing device of a plurality of computing devices, a manifest file and an update file associated with a content item, wherein each computing device of the plurality of computing devices: receives the manifest file and the update file based on a request time associated with that computing device and the content item, and determines, based on the manifest file and the request time corresponding to that computing device, a playback timeline;

receiving, via each computing device of the plurality of computing devices, based on a modified parameter value, indicating a quantity of content segments, in a manifest file associated with that computing device, a request for one or more content segments associated with: the content item and the playback timeline corresponding to that computing device, wherein each computing device of the plurality of computing devices modifies, based on the update file and the playback timeline corresponding to that computing device, the parameter value in the manifest file indicating the quantity of content segments; and

causing the one or more content segments to be output at each computing device of the plurality of computing devices.

16 . The method of claim 15 , wherein the content item comprises a linear content item or a live content item.

17 . The method of claim 15 , wherein each request time is associated with a time that the corresponding computing device, of the plurality of computing devices, requested the content item.

18 . The method of claim 15 , wherein each computing device of the plurality of computing devices is associated with a maximum value for a time-shift buffer associated with the corresponding computing device of the plurality of computing devices.

19 . The method of claim 18 , wherein the one or more content segments are associated with a playback duration that is less than or equal to the maximum value for the time-shift buffer associated with the corresponding computing device of the plurality of computing devices.

20 . The method of claim 15 , wherein the plurality of computing devices comprises a plurality of user devices.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2024
From: GILADI, ALEXANDER
To: COMCAST CABLE COMMUNICATIONS, LLC
Reel/Frame 069462/0483 →
Continuity (2)
Provisional Application 63571032 · Mar 28, 2024
Related Publication 20250310606A1 · Oct 2, 2025
References Cited (48)
US 6502139B1 · Birk et al. · 2002 [cited by applicant]
US 8751445B2 · Takeuchi · 2014 [cited by examiner]
US 9066138B1 · Kraiman · 2015 [cited by examiner]
US 9578395B1 · Qureshi et al. · 2017 [cited by applicant]
US 11012731B2 · Jones et al. · 2021 [cited by applicant]
US 20070203720A1 · Singh · 2007 [cited by examiner]
US 20090006177A1 · Beaver · 2009 [cited by examiner]
US 20090204994A1 · Kaminski et al. · 2009 [cited by applicant]
US 20120042050A1 · Chen et al. · 2012 [cited by applicant]
US 20120042090A1 · Chen · 2012 [cited by examiner]
US 20130067052A1 · Reynolds et al. · 2013 [cited by applicant]
US 20130159421A1 · Yue · 2013 [cited by examiner]
US 20140013375A1 · Giladi · 2014 [cited by examiner]
US 20140150044A1 · Takahashi · 2014 [cited by examiner]
US 20140230003A1 · Ma · 2014 [cited by examiner]
US 20140281009A1 · Moorthy et al. · 2014 [cited by applicant]
US 20150032855A1 · Wang · 2015 [cited by examiner]
US 20150261600A1 · Iturralde et al. · 2015 [cited by applicant]
US 20160127440A1 · Gordon · 2016 [cited by applicant]
US 20160198012A1 · Fablet et al. · 2016 [cited by applicant]
US 20170171094A1 · Biderman et al. · 2017 [cited by applicant]
US 20170353516A1 · Gordon · 2017 [cited by applicant]
US 20170374411A1 · Lederer et al. · 2017 [cited by applicant]
US 20180234714A1 · Johns · 2018 [cited by applicant]
US 20180255036A1 · Fiedler · 2018 [cited by applicant]
US 20190052689A1 · Cain · 2019 [cited by examiner]
US 20190222879A1 · Jones · 2019 [cited by examiner]
US 20190313150A1 · Cava · 2019 [cited by examiner]
US 20190342356A1 · Thomas · 2019 [cited by examiner]
US 20190349630A1 · Stockhammer · 2019 [cited by examiner]
US 20200037008A1 · Hassler · 2020 [cited by applicant]
US 20200195754A1 · Seo · 2020 [cited by examiner]
US 20220201366A1 · Ross et al. · 2022 [cited by applicant]
US 20220217194A1 · Sodagar · 2022 [cited by examiner]
US 20230124840A1 · Giladi · 2023 [cited by examiner]
US 20230328308A1 · Marciano et al. · 2023 [cited by applicant]
CN 102550034A · 2012 [cited by examiner]
CN 108886626A · 2018 [cited by examiner]
CN 110807039A · 2020 [cited by examiner]
EP 2853075B1 · 2016 [cited by examiner]
JP 2012123693A · 2012 [cited by examiner]
JP 2017098703A · 2017 [cited by examiner]
Extended European Search Report issued in related application No. EP25166381.1 dated Jun. 4, 2025. [cited by applicant]
European Search Report issuped in related application No. EP23179882.8 mailed Aug. 7, 2023. [cited by applicant]
“An MPD delta file for HTTP Streaming,” Research in Motion UK Limited, Prague, Czech Republic, Jun. 21-24, 2010. [cited by applicant]
“DASH MPD Delta Files,” Research in Motion, Guangzhou, China, Oct. 2010. [cited by applicant]
Zia et al., “Delta MPD in Message Update,” Qualcomm, Shanghai, China, Oct. 2012. [cited by applicant]
Giladi, “Patching MPD's: techniques for efficient MPD updates,” Geneva, Switzerland, Jan. 2013. [cited by applicant]