Adaptive Bit Rate Streaming for Buffer Under-run Prevention
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional digital content distribution systems face issues with buffer under-runs due to unpredictable network bandwidth, leading to unreliable or halted playback, and existing solutions either compromise on quality or require lengthy pre-buffering.
Innovation Solution
The method involves adaptively downloading digital content by starting with the lowest bit rate for initial playback and dynamically switching to higher bit rates as bandwidth allows, using a content distribution system that buffers units of video and audio data in a synchronized pattern, predicting buffer feasibility, and adjusting bit rates to avoid under-runs while maintaining high quality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a conservatively low bit rate is selected for playback, then the likelihood of buffer under-run is reduced, but playback quality deteriorates
Solution Approach 1:
The system dynamically adjusts the bit rate based on real-time buffer status and network conditions. Instead of selecting a fixed conservatively low bit rate, the system continuously monitors buffer fill levels and adapts the download bit rate accordingly, allowing playback quality to vary dynamically while preventing buffer under-runs through real-time control adjustments.
Solution Approach 2:
The system implements feedback control by monitoring buffer status and using this information to adjust future download decisions. The buffer status serves as feedback that informs the adaptive algorithm whether to maintain current bit rate, increase quality, or reduce bit rate to prevent under-runs, creating a closed-loop control system that balances quality and reliability.
2Reliability
If a relatively large portion of digital content file is pre-buffered prior to beginning playback, then the likelihood of buffer under-run is reduced, but startup time increases
Solution Approach 1:
The system performs preliminary buffering of the first segment before playback starts, ensuring immediate playback can begin without delay. Subsequent segments are buffered adaptively during playback based on buffer status and network conditions, eliminating the need to pre-buffer the entire file while still preventing under-runs through progressive buffering.
Solution Approach 2:
The digital content file is divided into multiple segments that can be downloaded and buffered independently. This segmentation allows the system to start playback with the first segment immediately available, then progressively download and buffer subsequent segments during playback, avoiding the need to wait for entire file buffering while maintaining buffer safety margins.
3Manufacturing precision
If the content buffer is kept full during high network bandwidth, then playback quality can be maintained, but buffer management complexity increases
Solution Approach 1:
The system changes buffer management parameters dynamically based on network conditions. During high bandwidth periods, the system allows the buffer to fill to higher levels to enable higher quality playback. During low bandwidth periods, buffer targets are adjusted downward. This parameter adaptation simplifies management by using clear threshold-based rules rather than complex predictive algorithms.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
One embodiment of the present invention sets forth a technique for adapting playback bit rate to available delivery bandwidth in a content delivery system comprising a content server and a content player. A content player periodically estimates whether a given playback bit rate can feasibly provide complete playback for a given title assuming currently available bandwidth. If playback becomes unfeasible at a current bit rate assuming currently available bandwidth, then the content player adapts the bit rate downward until a feasible bit rate is achieved. If playback is feasible using a higher bit rate, then the content player may adapt the bit rate upward.