Buffer Recovery in Segmented Media Delivery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In live media presentations, buffer exhaustion occurs when segments fail to be delivered, leading to halting or erratic playback experiences due to the inability to advance segment requests and replenish the buffer faster than segments are consumed, especially in scenarios where only a single version of the media is available.
Innovation Solution
Implementing a buffer recovery mechanism that monitors segment delivery failures and triggers corrective actions to slow down segment consumption from the buffer, allowing it to refill by repeating segments, adjusting playback duration, or inserting duplicate frames, thereby preventing buffer exhaustion.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the client requests segments continuously to keep the buffer replenished, then the buffer level is maintained, but buffer exhaustion occurs when segment delivery fails
Solution Approach 1:
The system monitors the buffer level and segment delivery status, using this feedback to dynamically adjust the segment request rate. When buffer level drops below a threshold or delivery failures are detected, the system reduces the request rate to allow buffer recovery, preventing exhaustion while maintaining reliable playback
Solution Approach 2:
The segment request rate is made dynamic rather than fixed. The system adjusts the request rate based on real-time buffer conditions and delivery performance, increasing requests when buffer is healthy and reducing them when buffer level drops or failures occur, resolving the contradiction between maintaining buffer level and preventing exhaustion
2Speed
If the client advances segment requests to refill the buffer faster, then buffer recovery is accelerated, but playback continuity is disrupted
Solution Approach 1:
Instead of aggressively advancing all segment requests to maximize refilling speed, the system applies partial action by selectively requesting only the necessary number of segments to reach the target buffer level. This moderate approach prevents over-advancing that would cause playback disruption while still achieving buffer recovery
Solution Approach 2:
The system performs preliminary assessment of buffer level and delivery status before advancing segment requests. By calculating the appropriate number of segments to request in advance based on current buffer state and target level, the system ensures that buffer refilling occurs at a pace that maintains playback continuity
Data Source
AI summary
Various embodiments of methods, apparatus, systems, and non-transitory computer-readable storage media for buffer recovery in segmented media delivery applications are described. Segments of a live media presentation are stored in a buffer. A number of segments in the buffer is determined to have fallen below a threshold. Based on that determination, various buffer recovery techniques may be performed. In one such technique, a buffered segment is decoded into a first set of video frames, the first set of video frames having a first playback duration. The first set of video frames is encoded into a second set of video frames having a second playback duration that is longer than the first playback duration.


