Adaptive Media Fragment Backfilling for Streaming Quality
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Adaptive bitrate media streaming technologies face challenges in maintaining consistent media quality due to latency and network fluctuations, leading to re-buffering and quality troughs, as they react to changing network conditions by pre-downloading content, which results in delayed quality adjustments and temporary quality drops.
Innovation Solution
Implementing adaptive media fragment backfilling, where a media player dynamically replaces previously downloaded media fragments with higher quality variants based on current buffer size, timeline quality, and network conditions, allowing for real-time adjustments to maintain optimal quality without re-buffering.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If media player pre-downloads content to reduce re-buffering, then playback continuity is improved, but media quality fluctuates and quality troughs occur due to latency in reacting to network conditions
Solution Approach 1:
The media player proactively replaces media fragments in the buffer with higher quality variants before they are played, based on predicted future network conditions. This preliminary action allows the system to prepare high-quality content in advance without waiting for actual network improvements, thereby maintaining both playback continuity and quality consistency.
Solution Approach 2:
The system dynamically adjusts the quality of media fragments in the buffer based on real-time network conditions and playback progress. Instead of static quality selection, the media player continuously monitors network performance and replaces fragments with appropriate quality levels, enabling adaptive quality maintenance throughout playback.
2Adaptability or versatility
If media player reacts to changing network conditions in real-time, then media quality adapts to network performance, but latency causes delayed quality adjustments and temporary quality drops
Solution Approach 1:
The media player performs quality adjustments in advance by replacing fragments in the buffer before they reach the playback position. This preliminary action eliminates the latency between detecting network improvements and actually playing high-quality content, as the replacement occurs proactively during the buffering phase.
Solution Approach 2:
The media content is divided into discrete fragments that can be independently replaced in the buffer. This segmentation allows the player to selectively upgrade specific fragments based on their position in the playback timeline and current network conditions, enabling precise quality control without affecting the entire stream.
3Reliability
If media player downloads significant amounts of data before playback, then re-buffering is reduced, but the decision latency on what to download results in quality troughs
Solution Approach 1:
The media player dynamically replaces fragments in the buffer with higher quality variants based on real-time network conditions and playback progress. This dynamic replacement process continues throughout playback, allowing the system to maintain high quality while ensuring sufficient buffered content for continuity.
Solution Approach 2:
The system changes the quality parameter of media fragments by replacing lower quality fragments with higher quality variants. This parameter change is performed selectively on fragments in the buffer, allowing quality improvement without requiring complete re-downloading of content, thus maintaining playback continuity.
Data Source
AI summary
Techniques for adaptive backfilling of media fragments are described. As one example, a computer-implemented method includes sending, by a media player, a request for a plurality of media fragments from a content data store, receiving the plurality of media fragments from the content data store with at least one media fragment at a first quality level into a front buffer of the media player via a network, starting playback of the plurality of media fragments from the front buffer after a startup threshold number of media fragments are received in the front buffer, detecting when a backfill threshold of the media player is exceeded by a backfill indicator, and replacing at least one of the plurality of media fragments at the first quality level in the front buffer of the media player with a second, higher quality level variant via the network when the backfill threshold is exceeded.


