IP Library Granted Patent US 10,440,080
Granted Patent B2
US 10,440,080 · App. 14/510,906 · Granted Oct 8, 2019

Software-defined media platform

Inventors: Paul Tweedale (Andover, MA); Chin-Cheng Wu (Carlisle, MA); Michael Shearer (Somerville, MA); Tung Ng (North Andover, MA)
Assignee: TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
H04L65/60G06F9/45558H04L41/0816H04L65/604H04L65/605H04L65/80H04L67/02H04L67/10H04L67/18H04L67/32H04N21/6405H04N21/64738H04N21/64761H04N21/64769H04N21/8456G06F2009/45562H04L41/0654H04L41/5019
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,440,080
App. No.
14/510,906
Granted
Oct 8, 2019
Kind
B2
Abstract

A software-defined media platform having one or more media processing units that may be dynamically instantiated, interconnected and configured according to changes in demand, resource availability, and other parameters affecting system performance relative to demand. In one example media processing method, a source media stream may be received via multicast or unicast. The source media stream may be processed into one or more levels of work product segments having different media characteristics by a plurality of transcoding processing units, as needed. One or more levels of work product segments, or the source media stream, may be packaged (e.g., including resegmenting) into final work product segments having select media characteristics, which may be uploaded to a cloud storage unit for delivery to end users.

Claims (33)

1. A method for adaptively processing a source media stream to facilitate delivery over an adaptive bitrate (ABR) streaming network, the method comprising:

receiving the source media stream at a media processing network node associated with the ABR streaming network;

processing the source media stream into multiple granular levels of work product segments having different media characteristics by a plurality of dynamically instantiated transcoding processing units of the media processing network node that are sequentially connected to one another in a daisy-chain configuration such that each subsequent transcoding processing unit receives an input segment stream from an upstream transcoding processing unit and generates a plurality of output segment streams having encoding bitrates that are different from an encoding bitrate of the input segment stream;

packaging one or more levels of the multiple granular levels of work products segments into one or more final work product segments having select media characteristics;

uploading the final work product segments having the select media characteristics by one or more dynamically instantiated packager processing units of the media processing network node to a storage node associated with the ABR streaming network; and

generating manifest files with respect to the final work product segments having the select media characteristics for facilitating streaming of one or more final work product segments to a plurality of ABR streaming client end stations.

2. The method as recited in claim 1 , further comprising:

determining if the source media stream is segmented and encoded at a bitrate acceptable for delivery;

if so, avoiding processing the source media stream into multiple levels of work product segments by the plurality of transcoding processing units; and

packaging the source media stream into the final work product segments and uploading the final work product segments packaged from the source media stream for delivery to the plurality of ABR streaming client end stations.

3. The method as recited in claim 1 , wherein the select media characteristics comprise at least one of multiple encoding bitrates, segment sizes and frame rates.

4. The method as recited in claim 1 , wherein the final work product segments having the select media characteristics are compliant with at least one of Moving Picture Expert Group (MPEG) Dynamic Adaptive Streaming over HTTP (MPEG-DASH) specification, HTTP Live Streaming (HLS) specification, Silverlight® Smooth Streaming specification and HTTP Dynamic Streaming (HDS) specification.

5. The method as recited in claim 1 , wherein the dynamically instantiated transcoding processing units and the dynamically instantiated packager processing units are instantiated responsive to one or more configuration triggers processed by an orchestration and resource (ORM) management node associated with the computer-implemented media processing system.

6. The method as recited in claim 5 , wherein the one or more configuration triggers are generated responsive to at least one of: (i) network analytics relative to the delivery of the final work product segment streams to the end users, (ii) service operator-initiated alarms, (iii) hardware or software failures, and (iv) an Electronic Program Guide (EPG) containing scheduling information of the source media stream in a geographical area.

7. The method as recited in claim 1 , wherein the encoding bitrates of the output segment streams are lower than the encoding bitrate of the input segment stream.

8. A computer-implemented media processing system configured for adaptively processing a source media stream to facilitate delivery over an adaptive bitrate (ABR) streaming network, the system comprising:

one or more processors; and

one or more persistent memory modules coupled to the one or more processors, the one or more persistent memory modules having program instructions stored thereon which, when executed by the one or more processors, are configured to:

process a source media stream into multiple granular levels of work product segments having different media characteristics by a plurality of dynamically instantiated transcoding processing units that are sequentially connected to one another in a daisy-chain configuration such that each subsequent transcoding processing unit receives an input segment stream from an upstream transcoding processing unit and generates a plurality of output segment streams having encoding bitrates that are different from an encoding bitrate of the input segment stream;

package one or more levels of the multiple granular levels of work product segments into one or more final work product segments having select media characteristics;

upload the final work product segments having the select media characteristics by one or more dynamically-instantiated packager processing units to a storage node associated with the ABR streaming network; and

generate manifest files with respect to the final work product segments having the select media characteristics for facilitating streaming of one or more final work product segments to a plurality of ABR streaming client end stations.

9. The computer-implemented media processing system as recited in claim 8 , wherein the program instructions further comprise instructions configured to:

determine if the source media stream is segmented and encoded at a bitrate acceptable for delivery;

if so, avoid processing the source media stream into multiple levels of work product segments by the plurality of transcoding processing units; and

package the source media stream into the final work product segments and upload the final work product segments packaged from the source media stream for delivery to the plurality of ABR streaming client end stations.

10. The computer-implemented media processing system as recited in claim 8 , wherein the select media characteristics comprise at least one of multiple encoding bitrates, segment sizes and frame rates.

11. The computer-implemented media processing system as recited in claim 8 , wherein the final work product segments having the select media characteristics are compliant with at least one of Moving Picture Expert Group (MPEG) Dynamic Adaptive Streaming over HTTP (MPEG-DASH) specification, HTTP Live Streaming (HLS) specification, Silverlight® Smooth Streaming specification and HTTP Dynamic Streaming (HDS) specification.

12. The computer-implemented media processing system as recited in claim 8 , wherein the program instructions further comprise instructions to dynamically instantiate the plurality of dynamically instantiated transcoding processing units and the one or more dynamically instantiated packager processing units based on one or more configuration triggers generated responsive to at least one of: (i) network analytics relative to the delivery of the final work product segment streams to the end users, (ii) service operator-initiated alarms, (iii) hardware or software failures, and (iv) an Electronic Program Guide (EPG) containing scheduling information of the source media stream in a geographical area.

13. The computer-implemented media processing system as recited in claim 12 , wherein the plurality of dynamically instantiated transcoding processing units are instantiated in one of a custom implementation, a single-rooted input/output virtualization (SR-IOV) implementation and a multi-rooted input/output virtualization (MR-IOV) implementation.

14. The computer-implemented media processing system as recited in claim 12 , wherein the one or more dynamically instantiated packager processing units are instantiated in one of a custom implementation, a single-rooted input/output virtualization (SR-IOV) implementation and a multi-rooted input/output virtualization (MR-IOV) implementation.

15. The computer-implemented media processing system as recited in claim 14 , wherein one of the dynamically instantiated packager processing units is configured to operate in a master mode, with remaining packager processing units being configured to operate in a slave or autonomous mode.

16. The computer-implemented media processing system as recited in claim 8 , wherein the plurality of dynamically instantiated transcoding processing units and the dynamically instantiated packager processing units are instantiated by an orchestration and resource (ORM) management node associated with the computer-implemented media processing system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2016
From: TWEEDALE, PAUL; WU, CHIN-CHENG; SHEARER, MICHAEL; NG, TUNG
To: TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Reel/Frame 038247/0734 →