Content delivery edge storage optimized media delivery to adaptive bitrate (ABR) streaming clients
First Claim
1. A system comprising:
- a media content delivery unit comprising;
an interface unit to receive a request, from a media client, to obtain a segment of media content at an adaptive bitrate (ABR) representation of a plurality of ABR representations; and
a transcoding unit comprising;
a scalable decoder that receives a set of two or more layers of a scalable coded representation corresponding to the requested segment of media content at the requested ABR representation and decodes the set of two or more layers to provide a set of media frames and scalable stream information for the segment, wherein the scalable stream information comprises coding tree block level information for a plurality of coding tree blocks in a scalable stream for the segment, wherein the coding tree block level information comprises partitioning information for prediction, a specific prediction mode within a type of prediction for each prediction partition, and motion vectors with respect to specific reference pictures for each predicted partition;
a hint stream decoder coupled to the scalable decoder, wherein the hint stream decoder receives a hint stream corresponding to the requested segment of media content at the requested ABR representation as a first input and the scalable stream information for the segment as a second input, and uses at least one of;
a) the partitioning information for prediction, b) the specific prediction mode within the type of prediction for each prediction partition, and c) the motion vectors with respect to specific reference pictures for each predicted partition as predictors in a hint stream coding representation to decode the hint stream for providing transcoding hints for the segment as an output; and
a re-encoder coupled to the scalable decoder and the hint stream decoder to receive the set of media frames and the transcoding hints, respectively, as inputs, and re-encode the set of media frames using the transcoding hints to provide an encoded bit stream corresponding to the requested segment of media content at the requested ABR representation for packaging and eventual delivery to the media client.
1 Assignment
0 Petitions
Accused Products
Abstract
A system includes an interface unit to receive a request, from a media client, to obtain a segment of media content at an ABR representation, and a transcoding unit. The transcoding unit includes a scalable decoder, hint stream decoder, and re-encoder. The scalable decoder receives and decodes a set of two or more layers of a scalable coded representation corresponding to the requested segment of media content at the requested ABR representation to provide a set of media frames and scalable stream information for the segment. The hint stream decoder receives and decodes a hint stream corresponding to the requested segment of media content at the requested ABR representation and the scalable stream information to provide transcoding hints for the segment. The re-encoder re-encodes the set of media frames using the transcoding hints to provide an encoded bit stream corresponding to the requested segment of media content.
54 Citations
39 Claims
-
1. A system comprising:
a media content delivery unit comprising; an interface unit to receive a request, from a media client, to obtain a segment of media content at an adaptive bitrate (ABR) representation of a plurality of ABR representations; and a transcoding unit comprising; a scalable decoder that receives a set of two or more layers of a scalable coded representation corresponding to the requested segment of media content at the requested ABR representation and decodes the set of two or more layers to provide a set of media frames and scalable stream information for the segment, wherein the scalable stream information comprises coding tree block level information for a plurality of coding tree blocks in a scalable stream for the segment, wherein the coding tree block level information comprises partitioning information for prediction, a specific prediction mode within a type of prediction for each prediction partition, and motion vectors with respect to specific reference pictures for each predicted partition; a hint stream decoder coupled to the scalable decoder, wherein the hint stream decoder receives a hint stream corresponding to the requested segment of media content at the requested ABR representation as a first input and the scalable stream information for the segment as a second input, and uses at least one of;
a) the partitioning information for prediction, b) the specific prediction mode within the type of prediction for each prediction partition, and c) the motion vectors with respect to specific reference pictures for each predicted partition as predictors in a hint stream coding representation to decode the hint stream for providing transcoding hints for the segment as an output; anda re-encoder coupled to the scalable decoder and the hint stream decoder to receive the set of media frames and the transcoding hints, respectively, as inputs, and re-encode the set of media frames using the transcoding hints to provide an encoded bit stream corresponding to the requested segment of media content at the requested ABR representation for packaging and eventual delivery to the media client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
19. A method for providing adaptive bit-rate (ABR) streaming to a media client, comprising:
-
receiving, via an interface unit of a media content delivery unit, a request, from the media client, to obtain a segment of media content at an adaptive bitrate (ABR) representation of a plurality of ABR representations; receiving, by a scalable decoder of a transcoding unit, a set of two or more layers of a scalable coded representation corresponding to the requested segment of media content at the requested ABR representation and decoding the set of two or more layers to provide a set of media frames and scalable stream information for the segment, wherein the scalable stream information comprises coding tree block level information for a plurality of coding tree blocks in a scalable stream for the segment, wherein the coding tree block level information comprises partitioning information for prediction, a specific prediction mode within a type of prediction for each prediction partition, and motion vectors with respect to specific reference pictures for each predicted partition; receiving, by a hint stream decoder coupled to the scalable decoder of the transcoding unit, a hint stream corresponding to the requested segment of media content at the requested ABR representation as a first input and the scalable stream information for the segment as a second input, and using at least one of;
a) the partitioning information for prediction, b) the specific prediction mode within the type of prediction for each prediction partition, and c) the motion vectors with respect to specific reference pictures for each predicted partition as predictors in a hint stream coding representation to decode for providing transcoding hints for the segment as an output; andreceiving, by a re-encoder coupled to the scalable decoder and the hint stream decoder, the set of media frames and the transcoding hints as inputs, and re-encoding the set of media frames using the transcoding hints to provide an encoded bit stream, corresponding to the requested segment of media content at the requested ABR representation by the transcoding unit for packaging and eventual delivery to the media client. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A non-transitory computer-readable storage medium having instructions that, when executed by a computing device, cause the computing device to:
-
receive, via an interface unit of a media content delivery unit, a request, from a media client, to obtain a segment of media content at an adaptive bitrate (ABR) representation of a plurality of ABR representations; receive, by a scalable decoder of a transcoding unit, a set of two or more layers of a scalable coded representation corresponding to the requested segment of media content at the requested ABR representation and decode the set of two or more layers to provide a set of media frames and scalable stream information for the segment, wherein the scalable stream information comprises coding tree block level information for a plurality of coding tree blocks in a scalable stream for the segment, wherein the coding tree block level information comprises partitioning information for prediction, a specific prediction mode within a type of prediction for each prediction partition, and motion vectors with respect to specific reference pictures for each predicted partition; receive, by a hint stream decoder coupled to the scalable decoder of the transcoding unit, a hint stream corresponding to the requested segment of media content at the requested ABR representation as a first input and the scalable stream information for the segment as a second input, and use at least one of;
a) the partitioning information for prediction, b) the specific prediction mode within the type of prediction for each prediction partition, and c) the motion vectors with respect to specific reference pictures for each predicted partition as predictors in a hint stream coding representation to decode the hint stream for providing transcoding hints for the segment as an output; andreceive, by a re-encoder coupled to the scalable decoder and the hint stream decoder, the set of media frames and the transcoding hints as inputs, and re-encode the set of media frames using the transcoding hints to provide an encoded bit stream, corresponding to the requested segment of media content at the requested ABR representation by the transcoding unit for packaging and eventual delivery to the media client. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39)
-
Specification