IP Library › Granted Patent US 10,291,734
Granted Patent B2
US 10,291,734 · App. 15/390,562 · Granted May 14, 2019

HTTP-based stream delivery

Inventors: Christopher R. Knox (San Diego, CA); Philip A. Lisiecki (Santa Barbara, CA); James Mutton (Maple Valley, WA); Chuck Bernard (San Francisco, CA); Ashok Lalwani (Foster City, CA); William Law (Corte Madera, CA); Thomas Devanneaux (Los Altos, CA)
Assignee: Akamai Technologies, Inc.
H04L67/2823H04L65/4084H04L65/605H04L67/02H04L67/2833H04L67/2842H04L69/08H04N21/2343H04N21/23106H04N21/2747H04N21/8456
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 10,291,734
App. No.
15/390,562
Granted
May 14, 2019
Kind
B2
Abstract

Live stream delivery within a content delivery network (CDN) includes recording the stream using a recording tier, and playing the stream using a player tier. Recording begins when the stream is received in a source format. The stream is then converted into an intermediate format (IF), which comprises a stream manifest, one or more fragment indexes (FI), and a set of IF fragments. A player process begins when a requesting client is associated with a CDN HTTP proxy. In response to receipt at the proxy of a request for the stream, the HTTP proxy retrieves (either from the archive or the data store) the stream manifest and at least one fragment index. Using the fragment index, the IF fragments are retrieved to the HTTP proxy, converted to a target format, and then served in response to the client request. Preferably, fragments are accessed, cached and served by the proxy via HTTP.

Claims (16)

1. A content delivery method, wherein the content is a stream, comprising:

as the stream is being received in a first format, converting the stream into a second format distinct from the first format, the second format comprising a stream manifest, a set of one or more fragment indexes (FI), and a set of IF fragments; and

archiving, via an archiver, a predetermined number of the IF fragments of the stream in the second format in association with a current fragment index, the predetermined number of the IF fragments of the stream adapted for live playback, wherein, as the predetermined number of the IF fragments of the stream age-out, the current fragment index is closed and the predetermined number of the IF fragments associated therewith are then transferred to and stored in a storage system distinct from the archiver, the archiving operation being repeated continuously as the stream continues to be received; and

thereafter playing the stream in response to receipt of a request.

2. The method as described in claim 1 wherein playing the stream comprises:

receiving the request;

retrieving the stream manifest and at least one fragment index;

using the fragment index, retrieving the IF fragments, wherein the IF fragments are retrieved (i) from the archiver when the request is for a portion of the stream that is then available for live playback, or (ii) from the storage system when the at least one fragment index is associated with any IF fragments that were previously transferred to and stored in the storage system;

converting the IF fragments to a third format, the third format also being distinct from the second format; and

serving the stream in the second format via HTTP.

3. The method as described in claim 1 wherein the archiving is performed via HTTP.

4. The method as described in claim 1 wherein the stream is one of: a live stream, and a DVR stream.

5. The method as described in claim 1 further including caching a predetermined number of IF fragments for live stream playback.

6. The method as described in claim 1 wherein the content is video content.

7. The method as described in claim 1 wherein the second format is a data handling and storage format internal to a content delivery network (CDN).

8. The method as described in claim 7 wherein the request is received at a CDN edge server from an end user client browser.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2017
From: KNOX, CHRISTOPHER; LISIECKI, PHILIP A.; MUTTON, JAMES; BERNARD, CHUCK; LAW, WILL; DEVANNEAUX, THOMAS
To: AKAMAI TECHNOLOGIES, INC.
Reel/Frame 041273/0038 →
Continuity (4)
Continuation 12858177 · Aug 17, 2010
Provisional Application 61291443 · Dec 31, 2009
Provisional Application 61234371 · Aug 17, 2009
Related Publication 20170111464A1 · Apr 20, 2017
Cited By (1)
US 12,671,733