Server-Based Jitter Buffer for VoIP Packet Reordering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing solutions for reducing jitter in audio communication, such as those used in Voice-over Internet Protocol (VOIP), are unreliable and provide suboptimal audio quality, especially for devices with small or no jitter buffers, as they struggle to handle out-of-order and burst packet processing in real-time.
Innovation Solution
Implementing a server-based packet processing system that uses a single thread for out-of-order and burst packet processing, employing a reorder buffer to ensure packets are in order and a speed buffer to regulate packet transmission, thereby reducing jitter and improving audio quality without relying on device capabilities.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If device-based jitter buffering is used, then real-time processing is maintained, but audio quality deteriorates due to insufficient buffer capacity in thin devices
Solution Approach 1:
A server-based jitter buffer acts as an intermediary between the sender and receiver of audio packets. The server receives out-of-order packets, reorders them using a reorder buffer, applies error concealment, and transmits them in the correct sequence. This intermediary approach allows thin devices to maintain real-time processing while achieving reliable audio quality that would otherwise require large local buffers.
2Manufacturing precision
If out-of-order packet processing is handled separately from burst processing, then processing accuracy is improved, but system complexity increases due to multiple threads
Solution Approach 1:
The patent combines out-of-order packet processing and burst packet processing into a single integrated thread. The reorder buffer handles out-of-order packets while the speed buffer manages burst packets, both within the same thread context. This merging reduces system complexity compared to using separate threads, while maintaining processing accuracy through the coordinated operation of the buffers.
3Reliability
If larger jitter buffers are implemented at devices, then audio quality improves, but processing delay increases
Solution Approach 1:
The server-based jitter buffer serves as an intermediary that performs packet reordering and error concealment, enabling thin devices to use smaller local buffers. This reduces the processing delay at client devices while maintaining audio quality through the server's buffering and processing capabilities.
4Reliability
If server-based packet processing is implemented, then audio quality improves through jitter reduction, but system complexity increases
Solution Approach 1:
The server implementation merges out-of-order and burst packet processing into a single thread with coordinated buffers, reducing the complexity overhead of server-based processing. The reorder buffer and speed buffer work together within one thread context, making the server system more manageable while still providing jitter reduction and quality improvement.
Data Source
AI summary
A computer stores packets from a first device at a first buffer. The computer decodes the packets to obtain decoded packets at a decoder. The computer encodes encoding the decoded packets to obtain encoded packets at an encoder. The computer transmits the encoded packets from the encoder to a storage unit. The computer fetches the encoded packets from the storage unit using a second buffer. The computer causes a transmitter to transmit the encoded packets from the second buffer to a second device.


