Localized redundancy for fragment processing
First Claim
Patent Images
1. A method, comprising:
- receiving a first portion of a live media stream at a first work dispatcher included in a first data center;
generating a first job associated with encoding and fragmenting the first portion of the live media stream, wherein the first job is placed in an active job queue and a standby job queue, wherein a plurality of redundant encoder and fragmenter resources are operable to obtain the first job from the active job queue to generate a first plurality of encoded fragments corresponding to a first variant of the first portion of the live media stream, the plurality of redundant encoder and fragmenters providing localized redundancy, wherein the plurality of redundant encoder and fragmenters includes distributed and dynamically scalable encoders and fragmenters configured to generate the first plurality of encoded fragments without using any centralized encoding management system;
maintaining the first plurality of encoded fragments in distributed storage;
retrieving the first plurality of encoded fragments using a plurality of fragment servers;
providing a plurality of devices with access to the first plurality of encoded fragments retrieved by the plurality of fragment servers; and
maintaining a separate redundant data center, the redundant data center configured to encode a subset of variants of the live media stream in order to provide geographically separate redundancy in addition to the localized redundancy such that the redundant data center does not run a complete system redundancy.
5 Assignments
0 Petitions
Accused Products
Abstract
A live media stream encoding system encodes live media streams into numerous variants of the live media streams each including multiple fragments. Live media streams are delineated, dispatched as jobs, and converted using distributed and dynamically scalable encoder and fragmenter resources without using any centralized encoding management system. Encoded fragments are maintained in shared storage and accessed as needed by devices during playback. Localized redundancy and/or geographic redundancy is provided throughout the system to prevent disruption upon failure of a particular node.
7 Citations
20 Claims
-
1. A method, comprising:
-
receiving a first portion of a live media stream at a first work dispatcher included in a first data center; generating a first job associated with encoding and fragmenting the first portion of the live media stream, wherein the first job is placed in an active job queue and a standby job queue, wherein a plurality of redundant encoder and fragmenter resources are operable to obtain the first job from the active job queue to generate a first plurality of encoded fragments corresponding to a first variant of the first portion of the live media stream, the plurality of redundant encoder and fragmenters providing localized redundancy, wherein the plurality of redundant encoder and fragmenters includes distributed and dynamically scalable encoders and fragmenters configured to generate the first plurality of encoded fragments without using any centralized encoding management system; maintaining the first plurality of encoded fragments in distributed storage; retrieving the first plurality of encoded fragments using a plurality of fragment servers; providing a plurality of devices with access to the first plurality of encoded fragments retrieved by the plurality of fragment servers; and maintaining a separate redundant data center, the redundant data center configured to encode a subset of variants of the live media stream in order to provide geographically separate redundancy in addition to the localized redundancy such that the redundant data center does not run a complete system redundancy. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system, comprising:
-
an interface configured to receive a first portion of a live media stream at a first work dispatcher included in a first data center; a processor configured to generate a first job associated with encoding and fragmenting the first portion of the live media stream, wherein the first job is placed in an active job queue and a standby job queue, wherein a plurality of redundant encoder and fragmenter resources are operable to obtain the first job from the active job queue to generate a first plurality of encoded fragments corresponding to a first variant of the first portion of the live media stream, the plurality of redundant encoder and fragmenters providing localized redundancy, wherein the plurality of redundant encoder and fragmenters includes distributed and dynamically scalable encoders and fragmenters configured to generate the first plurality of encoded fragments without using any centralized encoding management system; distributed storage configured to maintain the first plurality of encoded fragments; wherein a plurality of fragment servers are configured to retrieve the first plurality of encoded fragments maintained at the distributed storage; wherein a plurality of devices are provided with access to the first plurality of encoded fragments retrieved by the plurality of fragment servers; and a separate redundant data center, the redundant data center configured to encode a subset of variants of the live media stream in order to provide geographically separate redundancy in addition to the localized redundancy such that the redundant data center does not run a complete system redundancy. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer readable medium containing instructions for:
-
receiving a first portion of a live media stream at a first work dispatcher included in a first data center; generating a first job associated with encoding and fragmenting the first portion of the live media stream, wherein the first job is placed in an active job queue and a standby job queue, wherein a plurality of redundant encoder and fragmenter resources are operable to obtain the first job from the active job queue to generate a first plurality of encoded fragments corresponding to a first variant of the first portion of the live media stream, the plurality of redundant encoder and fragmenters providing localized redundancy, wherein the plurality of redundant encoder and fragmenters includes distributed and dynamically scalable encoders and fragmenters configured to generate the first plurality of encoded fragments without using any centralized encoding management system; maintaining the first plurality of encoded fragments in distributed storage; retrieving the first plurality of encoded fragments using a plurality of fragment servers; providing a plurality of devices with access to the first plurality of encoded fragments retrieved by the plurality of fragment servers; and maintaining a separate redundant data center, the redundant data center configured to encode a subset of variants of the live media stream in order to provide geographically separate redundancy in addition to the localized redundancy such that the redundant data center does not run a complete system redundancy. - View Dependent Claims (20)
-
Specification