Bitrate optimization for multi-representation encoding using playback statistics
First Claim
1. A method comprising:
- generating multiple versions of a segment of a source video, the versions comprising encodings of the segment at different encoding bitrates for each resolution of the segment;
measuring a quality metric for each version of the segment;
generating rate-quality models for each resolution of the segment based on the measured quality metrics corresponding to the resolutions;
obtaining client-side feedback statistics associated with prior playbacks of other videos different from the source video, wherein the client-side feedback statistics comprise playback traces transmitted from media players at client devices in a same geographic region of the source video, the playback traces comprising a respective network speed and a respective viewport size utilized on a respective client device for each of the prior playbacks;
generating, by a processing device, a probability model specific to the geographic region to predict requesting probabilities that representations of the segment are requested, the probability model based on a joint probability distribution of network speed and viewport size that is generated from the client-side feedback statistics associated with the prior playbacks of the other videos;
determining, by the processing device, an encoding bitrate for each of the representations of the segment based on the rate-quality models and the probability model; and
assigning determined encoding bitrates to corresponding representations of the segment.
2 Assignments
0 Petitions
Accused Products
Abstract
Implementations disclose bitrate optimization for multi-representation encoding using playback statistics. A method includes generating multiple versions of a segment of a source video, the versions comprising encodings of the segment at different encoding bitrates for each resolution of the segment, measuring a quality metric for each version of the segment, generating rate-quality models for each resolution of the segment based on the measured quality metrics corresponding to the resolutions, generating a probability model to predict requesting probabilities that representations of the segment are requested, the probability model based on a joint probability distribution of network speed and viewport size that is generated from client-side feedback statistics associated with prior playbacks of other videos, determining an encoding bitrate for each of the representations of the segment based on the rate-quality models and the probability model, and assigning determined encoding bitrates to corresponding representations of the segment.
-
Citations
22 Claims
-
1. A method comprising:
-
generating multiple versions of a segment of a source video, the versions comprising encodings of the segment at different encoding bitrates for each resolution of the segment; measuring a quality metric for each version of the segment; generating rate-quality models for each resolution of the segment based on the measured quality metrics corresponding to the resolutions; obtaining client-side feedback statistics associated with prior playbacks of other videos different from the source video, wherein the client-side feedback statistics comprise playback traces transmitted from media players at client devices in a same geographic region of the source video, the playback traces comprising a respective network speed and a respective viewport size utilized on a respective client device for each of the prior playbacks; generating, by a processing device, a probability model specific to the geographic region to predict requesting probabilities that representations of the segment are requested, the probability model based on a joint probability distribution of network speed and viewport size that is generated from the client-side feedback statistics associated with the prior playbacks of the other videos; determining, by the processing device, an encoding bitrate for each of the representations of the segment based on the rate-quality models and the probability model; and assigning determined encoding bitrates to corresponding representations of the segment. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system comprising:
-
a memory; and a processing device coupled to the memory, wherein the processing device is to; obtain client-side feedback statistics associated with prior playbacks of multiple videos different from a source video, wherein the client-side feedback statistics comprise playback traces transmitted from media players at client devices in a same geographic region of the source video, the playback traces comprising a respective network speed and a respective viewport size utilized on a respective client device for each of the prior playbacks; determine a joint probability distribution for network speed and viewport size based on the client-side feedback statistics received from client systems, the joint probability distribution specific to the geographic region; generate rate-quality models for resolutions of a segment of the source video based on quality metrics measured for the segment; estimate a delivered quality and egress for representations of the segment based on the generated rate-quality models and based on requesting probabilities that the representations are requested, wherein the requesting probabilities are based on the joint probability distribution; and determine a set of bitrates comprising a bitrate to correspond to each of the representations of the segment, the set of bitrates determined to minimize the egress while maintaining the delivered quality at or above a quality threshold value. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A non-transitory machine-readable storage medium storing instructions which, when executed, cause a processing device to perform operations comprising:
-
obtaining client-side feedback statistics associated with prior playbacks of multiple videos different from a source video, wherein the client-side feedback statistics comprise playback traces transmitted from media players at client devices in a same geographic region of the source video, the playback traces comprising a respective network speed and a respective viewport size utilized on a respective client device for each of the prior playbacks; determining a joint probability distribution for network speed and viewport size based on the client-side feedback statistics received from client systems, the joint probability distribution specific to the geographic region; generating rate-quality models for resolutions of a segment of a video based on quality metrics measure for the segment; estimating, by the processing device, a delivered quality and egress for representations of the segment based on the generated rate-quality models and based on requesting probabilities that the representations is requested, wherein the requesting probabilities are based on the joint probability distribution; and determining, by the processing device, a set of bitrates comprising a bitrate to correspond to each of the representations of the segment, the set of bitrates determined to maximize the delivered quality while keeping the egress at or below an egress threshold value. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification