Buffer Recovery in Segmented Media Delivery

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvebuffer replenishment reliabilityVSAvoidsegment consumption rate
Core Design Contradiction:
ReliabilityVSProductivity

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

Inventive Principle:
Principle #23Feedback

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

Inventive Principle:
Principle #15Dynamics

2Speed

If the client advances segment requests to refill the buffer faster, then buffer recovery is accelerated, but playback continuity is disrupted

Engineering Contradiction:
Improvebuffer refilling speedVSAvoidplayback continuity
Core Design Contradiction:
SpeedVSStability of the object's composition

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

Inventive Principle:
Principle #16Partial or excessive action

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

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11272227B1Buffer recovery in segmented media delivery applications
Publication Date: 2022.03.08 AMAZON TECH INC
  • US11272227B1 patent drawing
  • US11272227B1 patent drawing
  • US11272227B1 patent drawing

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.