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;
maintaining the first plurality of encoded fragments in distributed storage;
providing a plurality of devices with access to the first plurality of encoded fragments by using a plurality of fragment servers.
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.
-
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; maintaining the first plurality of encoded fragments in distributed storage; providing a plurality of devices with access to the first plurality of encoded fragments by using a plurality of fragment servers. - 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; distributed storage configured to maintain the first plurality of encoded fragments; wherein a plurality of devices are provided with access to the first plurality of encoded fragments by using a plurality of fragment servers. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. An apparatus, comprising:
-
means for receiving a first portion of a live media stream at a first work dispatcher included in a first data center; means for 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; means for maintaining the first plurality of encoded fragments in distributed storage; means for providing a plurality of devices with access to the first plurality of encoded fragments by using a plurality of fragment servers. - View Dependent Claims (20)
-
Specification