Media Stream Packet Buffering With Hypothetical Decoder Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In media streaming, especially with MBMS, determining the optimal initial buffering delay for receivers is challenging due to varying FEC block sizes and the need to minimize delay and memory allocation, while ensuring pauseless decoding and playback, especially when new receivers tune in mid-stream.

Innovation Solution

A hypothetical decoder buffering model is implemented to determine the minimum buffer requirements for receivers, allowing encoders and transmitters to control buffer occupancy levels and prevent overflows or underflows by generating a transmission schedule and forming repair RTP packets based on forward error correction data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If initial buffering is increased to ensure pauseless decoding and playback, then reliability of playback is improved, but loss of time (delay) increases

Engineering Contradiction:
Improvepauseless decoding and playbackVSAvoidbuffering delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The transmitter performs preliminary actions by calculating and signaling the required initial buffering duration to receivers before playback begins. This allows receivers to buffer exactly the necessary amount of data without excessive delay, ensuring pauseless playback while minimizing buffering time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The transmitter provides feedback to receivers about the optimal buffer size and occupancy levels needed for smooth playback. This feedback mechanism enables receivers to maintain appropriate buffer levels without trial-and-error adjustments, resolving the contradiction between sufficient buffering and minimal delay.

Inventive Principle:
Principle #23Feedback

2Adaptability or versatility

If buffer size is increased to handle varying FEC block sizes, then adaptability is improved, but quantity of substance (memory allocation) increases

Engineering Contradiction:
Improvehandling varying FEC block sizesVSAvoidmemory allocation
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system implements dynamic buffer management where the buffer occupancy level is adjusted based on the actual size of incoming FEC blocks. The transmitter signals the required buffer duration, and receivers dynamically adjust their buffer usage to match the actual needs of each FEC block rather than allocating fixed maximum memory.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of buffer occupancy level dynamically based on FEC block characteristics. Instead of allocating fixed maximum memory, receivers adjust buffer size according to the signaled requirements and actual block sizes, achieving adaptability without excessive memory allocation.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If repair RTP packets are added to protect against packet loss, then reliability is improved, but device complexity increases

Engineering Contradiction:
Improvepacket loss recoveryVSAvoidFEC block formation and processing
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements self-service error recovery where repair RTP packets are automatically generated by the transmitter and automatically processed by the receiver without requiring complex manual configuration or intervention. The standardized FEC block formation and automatic repair mechanisms reduce the perceived complexity for end users while maintaining high reliability.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS7447978B2Buffering packets of a media stream
Publication Date: 2008.11.04 NOKIA TECHNOLOGIES OY
  • US7447978B2 patent drawing
  • US7447978B2 patent drawing
  • US7447978B2 patent drawing

AI summary

Buffering packets of a media stream for transmission from a transmitting device to a receiving device. Media packets are formed from at least one kind of media information in a stream generator; forward error correction data is formed on the basis of the media packets; one or more repair packets are formed on the basis of the forward error correction data; and a transmission schedule is generated for packets to be transmitted. In addition, hypothetical decoding is also performed according to the transmission schedule. The hypothetical decoding comprises buffering the packets to be transmitted according to the transmission schedule to a hypothetical decoding buffer; and controlling the buffer occupancy level of the hypothetical decoding buffer by controlling the operation of the stream generator.