Packet Size Equalization for Multimedia Stream Reliability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for transmitting multimedia streams over the Internet face challenges with variable packet sizes, high latency, and packet loss, particularly in interactive applications like video conferencing, where conventional error-correcting codes with fixed block sizes are inefficient and introduce significant bandwidth waste.
Innovation Solution
A method that equalizes data packets by calculating an average size and adding a header to packets of variable sizes, using a packet equalization module and FEC encoding with a Golay code to reconstruct lost packets efficiently, while minimizing bandwidth overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If error-correcting codes with large block sizes are used to guarantee maximum reliability, then packet loss resistance is improved, but transmission latency increases significantly
Solution Approach 1:
The patent segments the multimedia stream into fixed-size blocks of N packets at the transmitter, and correspondingly segments the received packets into blocks at the receiver. This segmentation enables the use of short-block error-correcting codes while maintaining systematic processing, thereby reducing latency compared to large-block codes while still providing reliable error correction within each block.
Solution Approach 2:
The transmitter performs preliminary packet equalization by calculating the average packet size and padding shorter packets to match the average size before encoding. This preliminary action ensures that all packets in a block have uniform size, enabling efficient block code processing without requiring large block sizes, thus reducing latency while maintaining reliability.
2Reliability
If conventional error-correcting codes are used on variable-size packets, then packet loss resistance is improved, but bandwidth efficiency deteriorates due to padding requirements
Solution Approach 1:
The system performs preliminary packet size equalization by calculating the average packet size from the variable-size input stream and padding each packet to this average size before block encoding. This preliminary action minimizes the total padding overhead compared to using the maximum packet size, thereby improving bandwidth efficiency while enabling the use of error-correcting codes for packet loss resistance.
Solution Approach 2:
The patent changes the size parameter of packets from variable to fixed (equalized) by padding, and dynamically adjusts the block size N and average packet size based on the input stream characteristics. This parameter transformation enables efficient use of error-correcting codes while minimizing bandwidth overhead through adaptive equalization.
3Ease of manufacture
If packets are equalized by padding to maximum size, then fixed-size block encoding is enabled, but bandwidth waste increases significantly
Solution Approach 1:
Instead of padding to the maximum packet size, the system performs preliminary equalization by calculating the average packet size and padding only to this average. This preliminary action enables fixed-size block encoding while significantly reducing bandwidth waste compared to maximum-size padding, as the average size is typically much smaller than the maximum size in variable-bitrate streams.
Solution Approach 2:
The patent changes the equalization target parameter from maximum packet size to average packet size. This parameter change maintains compatibility with fixed-size block encoding requirements while minimizing bandwidth waste, as it adapts to the actual statistical characteristics of the variable-bitrate stream rather than using a conservative maximum value.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The invention relates to a method for equalizing, by blocks, the size of data packets of a multimedia stream comprising a series of variable-sized data packets. The method comprises the following steps: storing a group of N data packets in a buffer memory, N being a predefined integer; calculating the mean size Tm of a packet from the various sizes of the N packets; generating a basic stream comprising N data packets to be transmitted, each having a size equal either to the default integer portion [Tm] or to the excess integer portion [Tm] of said mean size, and at least one additional stream comprising N redundant data packets calculated from the packets of the basic stream, said redundant data packets having the same size as said packets of the basic stream and for enabling the receiver to optionally restore lost packets if the loss rate is greater than a predefined threshold; and transmitting said basic stream and said additional stream(s) to the receivers.