Video Encoding Ladders with Audience-Aware Just-in-Time Transcoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video encoding methods lack efficiency in generating video-specific encoding ladders that optimize quality and bitrate for diverse audience bandwidths without requiring extensive trial encodings, leading to increased computational costs and delayed publishing times.
Innovation Solution
A method utilizing a convex hull estimation model to predict bitrate-resolution pairs that maximize video quality, combined with audience bandwidth data to select a subset of bitrate-resolution pairs for a video-specific encoding ladder, enabling fast publishing of internet video streams with improved quality across varying viewer bandwidths.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional trial encoding methods are used to generate video encoding ladders, then comprehensive quality assessment across multiple bitrates can be achieved, but computational costs increase and publishing time is delayed
Solution Approach 1:
The system performs preliminary analysis of video features (resolution, frame rate, codec type, bit depth) before encoding to predict optimal bitrate-resolution pairs. This preliminary characterization allows the system to pre-determine encoding parameters without requiring extensive trial encodings, thus reducing publishing time while maintaining quality assessment accuracy.
Solution Approach 2:
Instead of performing multiple trial encodings to assess quality, the system uses a trained machine learning model that has learned from previously encoded videos to predict quality metrics. The model copies knowledge from training data to estimate quality outcomes, eliminating the need for actual trial encodings and significantly reducing computational time.
2Adaptability or versatility
If comprehensive trial encodings are performed to optimize encoding ladders for diverse audience bandwidths, then quality optimization across different bandwidth conditions is achieved, but computational costs increase
Solution Approach 1:
The system changes the approach from encoding-based quality assessment to feature-based prediction. By analyzing video parameters (resolution, frame rate, codec) and using these to predict optimal encoding settings through machine learning, the system avoids the high computational cost of multiple trial encodings while still achieving bandwidth adaptation.
Solution Approach 2:
The patent replaces the mechanical trial encoding process with a machine learning-based prediction system. Instead of physically encoding multiple versions to test quality, the system uses a trained model to predict optimal settings, substituting computational encoding operations with lighter-weight prediction operations.
3Productivity
If video features are analyzed to predict optimal bitrate-resolution pairs, then encoding efficiency is improved, but measurement and feature extraction complexity increases
Solution Approach 1:
The system uses a universal machine learning model that can handle multiple video feature types (resolution, frame rate, codec type, bit depth) through a single prediction framework. This multi-functional approach simplifies the overall process compared to having separate analysis tools for each feature type, making the system easier to implement despite the complexity of analyzing multiple parameters.
Data Source
AI summary
A method including: populating an encoding ladder with a subset of bitrate-resolution pairs, from a set of bitrate-resolution pairs, based on a distribution of audience bandwidths; receiving a first request for a first playback segment, at a first bitrate-resolution pair in a encoding ladder, in the video from a first device; in response to determining an absence of video segments, at the first bitrate-resolution pair and corresponding to the segment, in a first rendition cache: identifying a first set of mezzanine segments, in the video, corresponding to the first playback segment; assigning the first set of mezzanine segments to a set of workers for transcoding into a first set of video segments according to the first bitrate-resolution pair; storing the first set of video segments in the first rendition cache; and based on the first request, releasing the first set of video segments to the first device.


