Dual Jitter Buffers for Real-Time Communication Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing communication systems face challenges in managing network jitter, which affects the quality of real-time communications, particularly in mobile and WiFi networks, as traditional single jitter buffers introduce latency and are inadequate for applications like transcription where speech recognition accuracy is impacted by jitter artifacts.
Innovation Solution
Implementing multiple jitter buffers with different latency settings, where a shorter buffer is used for real-time communications and a longer buffer for transcription and recording, allowing different participants to receive audio with varying latencies based on their tolerance, thereby improving quality and resilience to network jitter.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Stability of the object's composition
If a jitter buffer is used to counter the negative impact of variation in packet delays, then packet processing consistency is improved, but additional delay is introduced between packet reception and reproduction
Solution Approach 1:
The system divides the single jitter buffer into multiple jitter buffers with different sizes (e.g., first jitter buffer with smaller size, second jitter buffer with larger size). Each buffer serves different latency requirements, allowing the system to simultaneously provide low-latency output for real-time communication and high-consistency output for recording, thereby resolving the contradiction between processing consistency and delay.
2Stability of the object's composition
If a larger jitter buffer size is used to achieve more consistent packet processing, then packet processing consistency is improved, but latency increases
Solution Approach 1:
Different jitter buffers are assigned different sizes according to their specific functional requirements. The smaller first jitter buffer is optimized for real-time communication where low latency is critical, while the larger second jitter buffer is optimized for recording where consistency is paramount. This local optimization allows each buffer to perform its specific function at peak efficiency without compromising the other.
3Device complexity
If a single jitter buffer is used, then device complexity is reduced, but the system cannot provide different latency outputs for different applications
Solution Approach 1:
The multiple jitter buffer system is designed to serve multiple functions simultaneously. The same set of jitter buffers provides output for both real-time communication and recording applications, making the system universally applicable to different use cases with different latency requirements, thereby achieving multi-functionality without requiring separate dedicated buffers for each application.
Data Source
AI summary
Various embodiments of the present technology generally relate to systems and methods for packet-based communications. More specifically, some embodiments provide cause a machine (e.g., client device, data center, collaboration service, etc.) to receive data packets from a network. The data packets can include payloads that represent encoded data from a real-time communication between multiple devices and can be copied into multiple jitter buffers. The multiple jitter buffers can include a first jitter buffer having a first size and a second jitter buffer having a second size that is larger than the first size of the first jitter buffer. In some embodiments, the machine can decode the data packets or payloads from the multiple jitter buffers to create at least a first output signal from first jitter buffer and a second output signal from the second jitter buffer.


