Interactive Media Streaming Buffering and Overlap Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current media streaming technologies face challenges in interactive environments where users can randomly select start points and move during playback, leading to issues like initial delays, buffering, and decoding inaccuracies due to limited client-side decoder capabilities and repeated data transmission.

Innovation Solution

A server-based system that sends overlapping sections of media data to the client, allowing for merging of decoded data to form a continuous stream, and implements a buffering process that prioritizes data storage and retrieval to minimize delays, using data structures like binary trees to manage playback positions and regions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the client sends requests for media data sections at different playback positions, then interactive playback is enabled, but the server sends repeated data multiple times increasing network traffic

Engineering Contradiction:
Improveinteractive playbackVSAvoidnetwork traffic
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The server pre-calculates and stores an index structure that maps playback positions to data sections before any client requests arrive. This preliminary organization allows the server to efficiently retrieve and send only the necessary data sections without retransmitting overlapping content, reducing network traffic while maintaining interactive playback capability

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of sending actual media data sections repeatedly, the server sends index entries that reference the data sections. The client uses these index entries to locate and retrieve the actual data sections from its own buffer or from the server once, eliminating repeated transmission of identical data content

Inventive Principle:
Principle #26Copying

2Loss of energy

If the server waits for client requests before sending data, then network traffic is reduced, but playback delay increases

Engineering Contradiction:
Improvenetwork trafficVSAvoidplayback delay
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The server performs preliminary organization of media data into indexed sections and pre-loads commonly accessed data sections into buffers before client playback begins. This advance preparation enables the server to respond to client requests immediately with pre-organized data, reducing playback delay while maintaining efficient network traffic management

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The server dynamically adjusts its data transmission strategy based on real-time client playback position and speed. By monitoring client behavior, the server proactively sends data sections ahead of the current playback position, optimizing the balance between reducing network traffic and minimizing playback delay

Inventive Principle:
Principle #15Dynamics

3Reliability

If overlapping sections are sent to account for decoder variations, then decoding accuracy improves, but data transmission volume increases

Engineering Contradiction:
Improvedecoding accuracyVSAvoiddata transmission volume
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

Instead of sending overlapping sections for all possible playback positions, the server identifies and sends overlapping sections only at specific critical boundaries where decoder variations are most likely to cause errors. This localized approach maintains decoding accuracy at critical points while minimizing overall data transmission volume

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The server dynamically adjusts the overlap parameter based on the specific playback position and data section being transmitted. By varying the overlap amount according to local requirements rather than using a fixed overlap for all sections, the system maintains decoding reliability while reducing unnecessary data transmission

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8745259B2Interactive media streaming
Publication Date: 2014.06.03 UJAM
  • US8745259B2 patent drawing
  • US8745259B2 patent drawing
  • US8745259B2 patent drawing

AI summary

A live rendering system can execute a process of buffering received data at the client to avoid needing to transfer the same data multiple times. If the client does not have data available for a wanted playback position (either compressed or decoded) then this data needs to be transferred from the server, including any overlaps needed for producing a continuous stream. The client stores the data in the event that it is needed again, but can discard the data if it receives notice that the stream content has changed. The buffering process can operate with a first priority to buffer data ahead of a currently selected playback position which is the most likely to be needed next, to minimize any delay or pauses in playback if needed data has not yet arrived. The download can be managed to preserve the known good part of decoded data.