IP Library › Granted Patent US 12,231,722
Granted Patent B2
US 12,231,722 · App. 18/302,419 · Granted Feb 18, 2025

Methods and systems for content delivery

Inventor: Garey Hassler (Castle Pines, CO)
Assignee: Comcast Cable Communications, LLC
H04N21/44008H04N21/437H04N21/442H04N21/83
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,231,722
App. No.
18/302,419
Granted
Feb 18, 2025
Kind
B2
Abstract

Methods and systems for delivering content are described. A content distribution network may utilize multiple content sources and datacenters when delivering content to a requesting device. One or more service metrics associated with the content as it is being prepared for delivery at each of the datacenters may be monitored by a quality agent. The quality agent may use the one or more service metrics to select a distribution datacenter to deliver the content to the requesting device. The quality agent may instruct the remaining datacenters to disable delivery of the content to the requesting device.

Claims (107)

1. One or more non-transitory computer-readable media storing processor-executable instructions that, when executed by at least one processor, cause the at least one processor to:

receive, by a first video packaging device and by a second video packaging device, a first portion of a content item;

package, by the first video packaging device and the second video packaging device, the first portion of the content item;

determine, based on a first service metric associated with the first video packaging device, that the first portion of the content item packaged by the first video packaging device meets or exceeds a quality threshold;

cause, based on the first portion of the content item packaged by the first video packaging device meeting or exceeding the quality threshold, the first video packaging device to deliver the first portion of the content item packaged by the first video packaging device to a first requesting device; and

send, to the second video packaging device, instructions to disable delivery of the first portion of the content item, packaged by the second video packaging device, to the first requesting device.

2. The non-transitory computer-readable media of claim 1 , wherein the first service metric is based on one or more packaging errors.

3. The non-transitory computer-readable media of claim 1 , wherein the first video packaging device is part of a first network and the second video packaging device is part of a second network.

4. The non-transitory computer-readable media of claim 3 , wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor to:

receive, by a computing device, the first service metric from a first video quality component associated with the first network; and

receive, by the computing device, a second service metric from a second video quality component associated with the second network, wherein the second service metric is based on one or more packaging errors.

5. The non-transitory computer-readable media of claim 4 , wherein the computing device is part of the first network or the second network.

6. The non-transitory computer-readable media of claim 1 , wherein the first portion of the content item received by the first video packaging device and the second video packaging device originates from a first source.

7. The non-transitory computer-readable media of claim 6 , wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor to:

receive, by the second video packaging device and from the first source, a second portion of the content item, wherein the second portion of the content item is packaged by the second video packaging device;

receive, from a second requesting device, a request for the second portion of the content item to be delivered from a second source; and

cause, based on the second portion of the content item, packaged by the second video packaging device, meeting or exceeding the quality threshold, the second video packaging device to deliver the second portion of the content item to the second requesting device.

8. A system comprising:

a first requesting device configured to send a request for a content item;

a first video packaging device configured to:

receive a first portion of the content item; and

package the first portion of the content item;

a second video packaging device configured to:

receive the first portion of the content item;

package the first portion of the content item;

determine, based on a first service metric associated with the second video packaging device, the first portion of the content item packaged by the second video packaging device meets or exceeds a quality threshold;

deliver, based on the first portion of the content item packaged by the second video packaging device meeting or exceeding the quality threshold, the first portion of the content item packaged by the second video packaging device to the first requesting device; and

send, to the first video packaging device, instructions to disable delivery of the first portion of the content item, packaged by the first video packaging device, to the first requesting device.

9. The system of claim 8 , wherein the first service metric is based on one or more packaging errors.

10. The system of claim 8 , wherein the first video packaging device is part of a first network and the second video packaging device is part of a second network.

11. The system of claim 10 , wherein the system further comprises:

a computing device configured to:

receive the first service metric from a first video quality component associated with the first network, wherein the first service metric is based on one or more packaging errors; and

receive a second service metric from a second video quality component associated with the second network.

12. The system of claim 11 , wherein the computing device is part of the first network or the second network.

13. The system of claim 8 , wherein the first portion of the content item received by the first video packaging device and the second video packaging device originates from a first source.

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

a second requesting device configured to send a request for a second portion of the content item to be delivered from a second source;

wherein the first video packaging device is further configured to:

receive, from the first source, the second portion of the content item, wherein the second portion of the content item is packaged by the second video packaging device;

receive, from the second requesting device, the request for the second portion of the content item; and

cause, based on the second portion of the content item, packaged by the second video packaging device, meeting or exceeding the quality threshold, the second video packaging device to deliver the second portion of the content item to the second requesting device.

15. One or more non-transitory computer-readable media storing processor-executable instructions that, when executed by at least one processor, cause the at least one processor to:

receive, by a first video packaging device and by a second video packaging device, a first portion of a content item;

package, by the first video packaging device and the second video packaging device, the first portion of the content item;

determine, based on service metric data associated with the first video packaging device, that the first portion of the content item, packaged by the first video packaging device, does not meet or exceed a quality threshold; and

receive, by the first video packaging device, instructions to disable delivery of the first portion of the content item packaged by the first video packaging device.

16. The non-transitory computer-readable media of claim 15 , wherein the service metric data is indicative of one or more packaging errors.

17. The non-transitory computer-readable media of claim 15 , wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor to receive the instructions from a video quality component.

18. The non-transitory computer-readable media of claim 15 , wherein the first video packaging device is part of a first network and the second video packaging device is part of a second network.

19. The non-transitory computer-readable media of claim 15 , wherein the first portion of the content item, received by the first video packaging device, originates from a first source, wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor to:

receive, by the first video packaging device and from the first source, a second portion of the content item; and

package, by the first video packaging device, the second portion of the content item.

20. The non-transitory computer-readable media of claim 19 , wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor to: receive, by the first video packaging device, an instruction to deliver the packaged second portion of the content item to a requesting device, wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor to receive the instruction based on a request, sent by the requesting device, for the second portion of the content item to be delivered from a second source.

21. The non-transitory computer-readable media of claim 20 , wherein the processor-executable instructions, when executed by the at least one processor, further cause the at least one processor to: send, based on the instruction, the packaged second portion of the content item to the requesting device.

22. A system comprising:

a first video packaging device configured to:

receive a first portion of a content item;

package the first portion of the content item;

determine, based on service metric data associated with the first video packaging device, the first portion of the content item, packaged by the first video packaging device, does not meet or exceed a quality threshold; and

receive instructions to disable delivery of the first portion of the content item packaged by the first video packaging device; and

a second video packaging device configured to:

receive the first portion of the content item; and

package the first portion of the content item.

23. The system of claim 22 , wherein the service metric data is indicative of one or more packaging errors.

24. The system of claim 22 , wherein the first video packaging device is further configured to receive the instructions from a video quality component.

25. The system of claim 22 , wherein the first video packaging device is part of a first network and the second video packaging device is part of a second network.

26. The system of claim 22 , wherein the first portion of the content item, received by the first video packaging device, originates from a first source, wherein the first video packaging device is further configured to:

receive, from the first source, a second portion of the content item; and

package the second portion of the content item.

27. The system of claim 26 , wherein the system further comprises:

a requesting device configured to send a request for the second portion of the content item to be delivered from a second source; and

wherein the first video packaging device is further configured to receive an instruction, based on the request for the second portion of the content item from the second source, to deliver the packaged second portion of the content item to the requesting device.

28. The system of claim 27 , wherein the first video packaging device is further configured to send, based on the instruction, the packaged second portion of the content item to the requesting device.

29. One or more non-transitory computer-readable media storing processor-executable instructions that, when executed by at least one processor, cause the at least one processor to:

receive, by a first video packaging device and by a second video packaging device, a first portion of a content item;

package, by the first video packaging device and the second video packaging device, the first portion of the content item;

determine, based on a first service metric associated with the first video packaging device, that the first portion of the content item, packaged by the first video packaging device meets or exceeds a quality threshold; and

send, to the second video packaging device, instructions to disable delivery of the first portion of the content item packaged by the second video packaging device, wherein the instructions to disable delivery are received prior to delivery of the first portion of the content item by the first video packaging device.

30. The non-transitory computer-readable media of claim 29 , wherein the processor-executable instructions that, when executed by the at least one processor, cause the at least one processor to determine the first portion of the content item, packaged by the first video packaging device, meets or exceeds the quality threshold, further cause the at least one processor to:

receive, by a computing device, the first service metric associated with the first portion of the content item packaged by the first video packaging device; and

receive, by the computing device, a second service metric associated with the first portion of the content item packaged by the second video packaging device.

31. The non-transitory computer-readable media of claim 30 , wherein the processor-executable instructions that, when executed by the at least one processor, cause the at least one processor to receive the first service metric and the second service metric, further cause the at least one processor to:

receive, by the computing device, the first service metric from a first video quality component associated with a first network; and

receive, by the computing device, the second service metric from a second video quality component associated with a second network.

32. The non-transitory computer-readable media of claim 31 , wherein the first video packaging device is part of the first network and the second video packaging device is part of the second network.

33. The non-transitory computer-readable media of claim 31 , wherein the computing device is part of the first network or the second network.

34. The non-transitory computer-readable media of claim 30 , wherein the first service metric and the second service metric are each indicative of one or more packaging errors.

35. A system comprising:

a first video packaging device configured to:

receive a first portion of a content item; and

package the first portion of the content item; and

a second video packaging device configured to:

receive the first portion of the content item;

package the first portion of the content item;

determine, based on a first service metric associated with the second video packaging device, the first portion of the content item, packaged by the second video packaging device meets or exceeds a quality threshold; and

send, to the first video packaging device, instructions to disable delivery of the first portion of the content item packaged by the first video packaging device, wherein the instructions to disable delivery are received prior to delivery of the first portion of the content item by the second video packaging device.

36. The system of claim 35 , wherein the system further comprises:

a computing device configured to:

receive the first service metric associated with the first portion of the content item packaged by the first video packaging device; and

receive a second service metric associated with the first portion of the content item packaged by the second video packaging device.

37. The system of claim 36 , wherein the computing device is further configured to:

receive the first service metric from a first video quality component associated with a first network; and

receive the second service metric from a second video quality component associated with a second network.

38. The system of claim 37 , wherein the first video packaging device is part of the first network and the second video packaging device is part of the second network.

39. The system of claim 37 , wherein the computing device is part of the first network or the second network.

40. The system of claim 36 , wherein the first service metric and the second service metric are each indicative of one or more packaging errors.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2023
From: HASSLER, GAREY
To: COMCAST CABLE COMMUNICATIONS, LLC
Reel/Frame 063391/0226 →
Continuity (3)
Continuation 16521264 · Jul 24, 2019
Provisional Application 62818452 · Mar 14, 2019
Related Publication 20230362435A1 · Nov 9, 2023
References Cited (61)
US 6195680B1 · Goldszmidt et al. · 2001 [cited by applicant]
US 6377996B1 · Lumelsky et al. · 2002 [cited by applicant]
US 6772216B1 · Ankireddipally et al. · 2004 [cited by applicant]
US 6976085B1 · Aviani et al. · 2005 [cited by applicant]
US 7254634B1 · Davis et al. · 2007 [cited by applicant]
US 7587467B2 · Hesselink et al. · 2009 [cited by applicant]
US 8082591B2 · Gu et al. · 2011 [cited by applicant]
US 8214862B1 · Lee et al. · 2012 [cited by applicant]
US 8379668B2 · Poder et al. · 2013 [cited by applicant]
US 9104882B2 · Salinger et al. · 2015 [cited by applicant]
US 9106663B2 · Patterson et al. · 2015 [cited by applicant]
US 9608957B2 · Sivasubramanian et al. · 2017 [cited by applicant]
US 10560215B1 · Hegar et al. · 2020 [cited by applicant]
US 10630990B1 · Saxton et al. · 2020 [cited by applicant]
US 11057446B2 · Shribman et al. · 2021 [cited by applicant]
US 20040059939A1 · de Jong · 2004 [cited by applicant]
US 20070245010A1 · Arn et al. · 2007 [cited by applicant]
US 20080222277A1 · Park et al. · 2008 [cited by applicant]
US 20090287835A1 · Jacobson · 2009 [cited by applicant]
US 20100157882A1 · Moriwaki et al. · 2010 [cited by applicant]
US 20110082924A1 · Gopalakrishnan · 2011 [cited by applicant]
US 20110167105A1 · Ramakrishnan et al. · 2011 [cited by applicant]
US 20120054265A1 · Kazerani et al. · 2012 [cited by applicant]
US 20120110199A1 · Mao et al. · 2012 [cited by applicant]
US 20130007223A1 · Luby et al. · 2013 [cited by applicant]
US 20130166659A1 · Champel et al. · 2013 [cited by applicant]
US 20130238799A1 · Osamura et al. · 2013 [cited by applicant]
US 20130244614A1 · Santamaria et al. · 2013 [cited by applicant]
US 20130297738A1 · Tarkoma · 2013 [cited by applicant]
US 20130304851A1 · Vance · 2013 [cited by applicant]
US 20140348165A1 · Frydman et al. · 2014 [cited by applicant]
US 20150012661A1 · Elmore · 2015 [cited by applicant]
US 20150032856A1 · Ishikawa et al. · 2015 [cited by applicant]
US 20150067819A1 · Shribman et al. · 2015 [cited by applicant]
US 20150100631A1 · Jenkins et al. · 2015 [cited by applicant]
US 20150134967A1 · Moore · 2015 [cited by applicant]
US 20150172389A1 · Michimura et al. · 2015 [cited by applicant]
US 20150222670A1 · Inoue et al. · 2015 [cited by applicant]
US 20160036804A1 · Moore · 2016 [cited by applicant]
US 20160055188A1 · Goel et al. · 2016 [cited by applicant]
US 20160057139A1 · McDonough et al. · 2016 [cited by applicant]
US 20160080252A1 · Ramachandran et al. · 2016 [cited by applicant]
US 20160119431A1 · Bortz et al. · 2016 [cited by applicant]
US 20160241910A1 · Rowe · 2016 [cited by applicant]
US 20160337426A1 · Shribman et al. · 2016 [cited by applicant]
US 20160380852A1 · Kawamori et al. · 2016 [cited by applicant]
US 20170011084A1 · Goel et al. · 2017 [cited by applicant]
US 20170055007A1 · Phillips et al. · 2017 [cited by applicant]
US 20170078432A1 · Miller et al. · 2017 [cited by applicant]
US 20170163738A1 · Tamura · 2017 [cited by applicant]
US 20170163755A1 · Slocombe et al. · 2017 [cited by applicant]
US 20180139192A1 · Pishinov et al. · 2018 [cited by applicant]
US 20180227606A1 · Fryer et al. · 2018 [cited by applicant]
US 20190215361A1 · Lohmar et al. · 2019 [cited by applicant]
US 20190222619A1 · Shribman et al. · 2019 [cited by applicant]
US 20200213592A1 · Saxton et al. · 2020 [cited by applicant]
US 20200351378A1 · Shribman et al. · 2020 [cited by applicant]
US 20210127151A1 · Sengupta et al. · 2021 [cited by applicant]
US 20210258158A1 · Nelson et al. · 2021 [cited by applicant]
U.S. Appl. No. 17/501,980 (2022/0103641), filed Oct. 14, 2021 (Mar. 31, 2022), Garey Hassler (Comcast Cable Communications. [cited by applicant]
U.S. Appl. No. 16/521,264 (U.S. Pat. No. 11,671,653), filed Jul. 24, 2019 (Jun. 6, 2023), Garey Hassler (Comcast Cable Communications, LLC). [cited by applicant]