Skip to content

fix(whip input): restore the default jitterbuffer latency to 200 ms - #1064

Merged
srperens merged 1 commit into
mainfrom
fix/whip-input-latency-200
Oct 12, 2026
Merged

srperens merged 1 commit into
mainfrom
fix/whip-input-latency-200

Conversation

@srperens

Copy link
Copy Markdown
Collaborator

Problem

WHIP Input sets the jitterbuffer latency to 400 ms by default (jitterbuffer_latency_ms, since #665). That doubles the receive-side buffering over GStreamer's own default and adds 200 ms of end-to-end latency to every WHIP contribution.

Change

Restore the default to 200 ms, the same as webrtcbin's and rtpjitterbuffer's latency default (gst-inspect-1.0: Default: 200). The property stays, so an operator who sees video fail to start can raise it. The block definition default, the parser fallback, the code comment and the unit test move together.

WHEP Input's jitterbuffer_latency_ms is left as it is.

Evidence

  • Default is 200: jitterbuffer_latency_ms_defaults_to_200 calls the real parse_jitterbuffer_latency_ms and fails if the fallback goes back to 400.
  • The UI default comes from the block definition (PropertyValue::Int(200)). Not covered by a test.

Tests

Ran (macOS): cargo test --lib jitterbuffer_latency_ms: 3 passed.
Not run: WHIP integration tests and a live WHIP session.

For the reviewer

#665 raised this to 400 because 200 together with drop-on-latency (on by default) dropped the first video keyframe's packet burst on a fresh per-session pipeline, so video never started. WHIP Input has had many fixes since then (#957 and others), but nobody has rerun that case at 200. Watch for video that never starts on connect; the workaround is to raise jitterbuffer_latency_ms on the block.

Flows that saved 400 explicitly keep it. Flows that relied on the default get 200.

🤖 Generated with Claude Code

WHIP Input defaulted jitterbuffer_latency_ms to 400 ms since #665, twice
webrtcbin's own default. Restore it to 200 ms. The property stays for
operators who need more headroom.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@srperens
srperens merged commit a7a0138 into main Oct 12, 2026
4 of 5 checks passed
@srperens
srperens deleted the fix/whip-input-latency-200 branch October 12, 2026 08:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant