Adaptive Video Streaming Quality Level Selection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video streaming technologies face challenges in delivering video content over networks with non-deterministic bandwidth availability, particularly when encoded at multiple quality levels, as they struggle to determine the optimal bit rate for timely delivery without interrupting the stream.
Innovation Solution
A method is proposed where video content is encoded at multiple quality levels, and pre-calculated data is used to determine the minimum delivery bit rate required for each quality level, allowing for adaptive switching based on network throughput and buffer conditions, ensuring continuous and high-quality video streaming.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If video is encoded at constant bit rate to simplify delivery, then device complexity is reduced, but video quality varies over time and across content genres
Solution Approach 1:
The video content is segmented into multiple encoded versions at different constant bit rates (e.g., 2 Mbps, 5 Mbps, 10 Mbps). Each segment represents the same video content but encoded with different quality levels, allowing the system to select the appropriate segment based on network conditions while maintaining consistent quality within each segment.
Solution Approach 2:
The encoding parameter (bit rate) is changed to create multiple versions of the same video content. By encoding the same video at different constant bit rates, the system provides a range of quality options that can be adapted to varying network conditions without requiring complex real-time encoding adjustments.
2Manufacturing precision
If video is encoded at variable bit rate to maintain constant quality, then video quality consistency is improved, but network delivery becomes unpredictable and requires bandwidth reservation
Solution Approach 1:
The system dynamically selects between multiple pre-encoded constant bit rate versions based on real-time network conditions. Instead of using a single variable bit rate stream that requires bandwidth reservation, the client can switch between different constant bit rate segments (e.g., from 2 Mbps to 5 Mbps or 10 Mbps) as network throughput varies, achieving both quality consistency and delivery reliability.
Solution Approach 2:
Multiple video segments are pre-encoded at different constant bit rates before delivery. This preliminary encoding preparation allows the system to respond to network conditions by selecting the appropriate pre-encoded segment without requiring real-time encoding or bandwidth reservation, simplifying network delivery while maintaining quality consistency.
3Adaptability or versatility
If multiple quality levels are prepared to adapt to network conditions, then adaptability is improved, but device complexity increases due to multiple encodings
Solution Approach 1:
The video content is divided into multiple segments, each encoded at a different constant bit rate. This segmentation approach provides adaptability to network conditions by allowing selection of appropriate quality levels while keeping each individual encoding process simple and manageable.
Solution Approach 2:
The same video content is encoded once at multiple constant bit rates to create universally compatible segments. These multi-functional segments can be delivered over various network conditions without requiring separate encoding processes, reducing overall encoding complexity while maintaining adaptability.
4Reliability
If bandwidth reservation is implemented to ensure reliable delivery, then network delivery reliability is improved, but cost and network resource utilization worsen
Solution Approach 1:
The system uses dynamic selection of pre-encoded constant bit rate segments based on real-time network throughput measurements. Instead of reserving bandwidth for maximum quality delivery, the client adapts by selecting segments at appropriate bit rates (e.g., 2 Mbps, 5 Mbps, or 10 Mbps) matching current network capacity, ensuring reliable delivery without excessive bandwidth consumption.
Solution Approach 2:
The delivery bit rate parameter is changed based on network conditions by selecting from multiple pre-encoded segments. This allows the system to maintain reliable delivery by matching the selected segment's constant bit rate to the current network throughput, avoiding both bandwidth reservation and delivery interruptions.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The network contains one or more network based video servers connected to one or more video receivers over a shared network. Multiple pieces of video content are each encoded at a number of constant quality levels and stored on one or more of the network based servers. In response to requests from a receiver, video content is selected on a server and delivered over the shared network to the receiver. The system selects the quality level of the stream to deliver based on characteristics of the video stream currently being delivered, and the number of bits already buffered at the video receiver and the available network throughput. The aim is to select the video quality being delivered according to the available network throughput so as maximise the quality while ensuring that all video data is delivered over the network in time for it to be decoded and displayed without interruption. The invention proposes a method for making that selection in advance.