Jitter Buffer Average Jitter
Understand the jitter buffer's internal average jitter measurement — how it differs from network-level jitter and why it provides a more accurate picture.
The jitter buffer average jitter measures the mean variation in packet arrival timing as observed inside the receiver's jitter buffer, expressed in milliseconds. It captures how much packets deviate from their expected arrival schedule after accounting for buffer processing.
In everyday terms, jitter is how inconsistent the gaps between packets are. If packets arrive like a steady drumbeat, jitter is near zero. If they arrive in unpredictable bursts and pauses, jitter is high. This metric measures that inconsistency from the buffer's perspective.
How It Works
The jitter buffer continuously tracks the arrival time of each incoming RTP packet and compares it against the expected arrival time based on the packet's timestamp and the stream's clock rate. The difference between expected and actual arrival is the instantaneous jitter for that packet.
The average jitter is computed as a running mean of these instantaneous values, typically using an exponentially weighted moving average. This smooths out momentary spikes and provides a representative view of the ongoing timing variation.
This measurement differs from the RTCP-reported jitter (RFC 3550, Section 6.4.1) in an important way: the RTCP jitter is calculated at the network level from raw packet timestamps, while the jitter buffer's internal jitter accounts for the buffer's own processing, reordering, and timing adjustments. The buffer-level measurement is generally more accurate for predicting actual playback quality.
Buffer jitter vs network jitter
CallMeter reports both network-level jitter (from RTCP) and jitter buffer average jitter. If the two values differ significantly, the buffer is actively compensating for timing variations. The buffer jitter is the better predictor of actual media quality because it reflects what the decoder actually sees.
Why It Matters
Average jitter is the primary input for adaptive buffer sizing. The buffer uses this value to decide how deep it needs to be — higher jitter means a larger buffer (and more latency) is needed to prevent late packets and gaps.
For SIP testing, average jitter reveals the true timing behavior of your media path under load. A test that shows low jitter at 10 endpoints but high jitter at 100 endpoints pinpoints the capacity threshold where your network or media infrastructure starts introducing timing irregularities.
Thresholds
| Level | Value | Interpretation |
|---|---|---|
| Good | 20ms or less | Stable timing, minimal buffering needed |
| Warning | 40ms | Noticeable variation, buffer is working harder |
| Critical | Above 60ms | Severe timing instability, quality at risk |
Common Causes of High Jitter
| Cause | Explanation |
|---|---|
| Network congestion | Competing traffic creates variable queuing delays |
| WiFi interference | Wireless retransmissions and channel contention |
| Buffer bloat | Oversized network buffers add variable latency |
| Shared bandwidth | Other applications consuming capacity in bursts |
| Geographic routing | Long paths with many intermediate hops |
| CPU contention | Processing delays on the media server under load |
How to Fix It
- Apply QoS policies — Prioritize RTP traffic with DSCP markings (e.g., EF for audio, AF41 for video) to ensure consistent packet scheduling through network equipment.
- Use dedicated media networks — Separate real-time media traffic from bulk data traffic to eliminate cross-traffic interference.
- Eliminate WiFi where possible — Wired connections provide dramatically more consistent timing than wireless.
- Address buffer bloat — Enable Active Queue Management (CoDel, PIE) on network equipment to prevent excessive queuing.
- Monitor CPU on media servers — If calls route through a media server, SBC, or transcoder, verify it has adequate processing capacity under your test load.
Related Metrics
- Current Delay — The buffer depth driven by this jitter measurement
- Target Delay — The target buffer depth calculated from jitter analysis
- Late Packets — Packets arriving after deadline due to jitter exceeding buffer capacity
- Jitter — Network-level jitter from RTCP reports, for comparison
Jitter Buffer Late Packets
Understand jitter buffer late packets — packets that arrived after their playback deadline and were discarded by the buffer.
Jitter Buffer Packet Losses
Understand jitter buffer packet losses — packets declared lost by the buffer after waiting past their deadline, and how they differ from network-level loss.