Optimal multi-codec ABR ladder design
AssigneeBrightcove Inc.
InventorsYuriy Reznik, Xiangbo Li, Justin Greer, Abhijith Jagannath, Karl O. Lillevold
Life of this patent
Estimating the term…
Abstract
Techniques are disclosed for the creation of multi-codec encoding profiles (or encoding ladders), which define quality and bitrate for each of the streams made available to clients for streaming a video. In particular, optimization techniques may take into account a quality rate function of each of the codecs when determining the encoding ladder. Additional considerations may include a network bandwidth distribution and/or a distribution of client types.
Claims21
A method for creating a multi-codec encoding ladder for streaming a video, the method comprising:
- obtaining, by a computer system, source content comprising the video;
- generating an encoding ladder for the source content, wherein:
- each video stream of a plurality of video streams defined by the encoding ladder includes a respective bitrate and a respective codec of a plurality of codecs for encoding the source content;
- and
- the encoding ladder includes:
- a first video stream and a second video stream of a first codec, wherein the first video stream and the second video stream are encoded using the first codec having respective bitrates of R11 and R12 and respective quality values of Q11 and Q12;
- and
- a third video stream encoded using a second codec having a bitrate of R21 and a quality value of Q21;
- such that:
- R11<R21<R12 and
- Q11<Q21<Q12;
- and
- streaming the video adaptively to switch among the first, second and third video streams to render the source content for a viewer.
A computer system for creating a multi-codec encoding ladder for streaming a video, the computer system comprising:
- a memory;
- and
- one or more processing units communicatively coupled with the memory and configured to:
- obtain source content comprising the video;
- generate an encoding ladder for the source content, such that:
- each video stream of a plurality of video streams defined by the encoding ladder includes a respective bitrate and a respective codec of a plurality of codecs for encoding the source content;
- and
- the encoding ladder includes:
- a first video stream and a second video stream of a first codec, wherein the first video stream and the second video stream are encoded using the first codec having respective bitrates of R11 and R12 and respective quality values of Q11 and Q12;
- and
- a third video stream encoded using a second codec having a bitrate of R21 and a quality value of Q21;
- such that:
- R11<R21<R12 and
- Q11<Q21<Q12;
- and
- stream the video adaptively to switch among the first, second and third video streams to render the source content for a viewer.
A non-transitory computer-readable medium having instructions stored therewith for creating a multi-codec encoding ladder for streaming a video, wherein the instructions, when executed by one or more processing units, cause the one or more processing units to:
- obtain source content comprising the video;
- generate an encoding ladder for the source content, such that:
- each video stream of a plurality of video streams defined by the encoding ladder includes a respective bitrate and a respective codec of a plurality of codecs for encoding the source content;
- and
- the encoding ladder includes:
- a first video stream and a second video stream of a first codec, wherein the first video stream and the second video stream are encoded using the first codec having respective bitrates of R11 and R12 and respective quality values of Q11 and Q12;
- and
- a third video stream encoded using a second codec having a bitrate of R21 and a quality value of Q21;
- such that:
- R11<R21<R12 and
- Q11<Q21;
- and
- stream the video adaptively to switch among the first, second and third video streams to render the source content for a viewer.
Dependencies are inferred from the claim text.