Adaptive Bit Rate Streaming for Buffer Under-Run Prevention
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional digital content streaming systems face issues with buffer under-runs due to variable network bandwidth, leading to unreliable or halted playback, and existing solutions either compromise on quality or require lengthy pre-buffering.
Innovation Solution
A method for adaptively downloading digital content by selecting the lowest bit rate initially and dynamically switching to higher bit rates as bandwidth permits, using a content distribution system that buffers units of video and audio data in a synchronized manner, predicting buffer feasibility, and adjusting bit rates to avoid under-runs while maintaining high quality playback.
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 conservative bit rate, the player continuously monitors buffer fill levels and adapts the download bit rate accordingly, allowing the system to operate at higher quality when buffer conditions permit while maintaining reliability when bandwidth is limited.
Solution Approach 2:
The invention changes the bit rate parameter dynamically during playback based on buffer status. The system monitors buffer fill levels and adjusts the downloaded content's bit rate parameter in real-time, transitioning between different quality levels to balance playback quality and buffer under-run prevention.
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 dynamically adjusts the pre-buffering strategy based on network conditions and content characteristics. Instead of always pre-buffering a large fixed portion, the player adaptively determines the optimal pre-buffer amount and continues to adjust buffer management during playback, reducing startup delay while maintaining buffer safety margins.
Solution Approach 2:
The system performs preliminary buffering action but optimizes the amount buffered based on real-time conditions. The player begins downloading content to the buffer before playback starts, but the duration and amount of pre-buffering are dynamically adjusted based on network bandwidth measurements and buffer fill rates, allowing faster startup when conditions permit.
3Manufacturing precision
If the content player selects a digital content file with the highest bit rate not exceeding measured bandwidth, then playback quality is maximized, but buffer under-run occurs when bandwidth drops
Solution Approach 1:
The system implements continuous feedback monitoring of buffer fill levels and network bandwidth. The player measures actual download performance and buffer consumption rates in real-time, using this feedback to dynamically adjust the selected bit rate. When feedback indicates buffer depletion risk, the system downshifts to lower bit rate content from the same title, preventing buffer under-runs while maintaining quality when conditions allow.
Solution Approach 2:
The bit rate selection is made dynamic rather than static. The player continuously monitors buffer status and network conditions, adjusting the effective bit rate being downloaded during playback. This allows the system to start with high-quality content when bandwidth permits and dynamically transition to lower bit rates when buffer levels indicate potential under-runs.
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.