English for WebRTC Developers

Master the English vocabulary developers use for signaling, ICE negotiation, and media tracks when discussing real-time audio and video code with a team.

WebRTC’s reputation for being hard to debug comes largely from vocabulary confusion — “the call won’t connect” could mean a signaling failure, an ICE negotiation failure, or a media codec mismatch, and each requires a completely different fix. A team that names the layer precisely can triage in minutes instead of hours. This guide covers the English used when discussing WebRTC code with a team.

Key Vocabulary

Signaling — the out-of-band process (WebRTC doesn’t define it, so it’s built with WebSockets or similar) of exchanging session descriptions and candidates between peers before a connection can be established. “The call fails before any media flows, and the browser console shows no ICE errors at all — that points to a signaling problem, not a WebRTC connectivity issue.”

SDP (Session Description Protocol) — a text format describing a media session’s capabilities (codecs, resolutions, encryption keys), exchanged as an offer and answer between peers during signaling. “The remote peer’s SDP answer doesn’t include a codec our side offered — that’s an SDP negotiation mismatch, not a network problem.”

ICE candidate — a potential network path (a local IP, a NAT-reflected address via STUN, or a relayed address via TURN) that WebRTC gathers and exchanges to find a route between two peers. “We’re only gathering host candidates, no STUN or TURN candidates — that’s why this fails between two peers on different networks but works fine on the same LAN.”

STUN / TURN server — a STUN server helps a peer discover its public-facing address behind NAT; a TURN server relays media traffic entirely when a direct peer-to-peer path isn’t possible. “This connection only succeeds through the TURN relay, never directly — that tells us we’re dealing with a symmetric NAT that STUN alone can’t traverse.”

ICE negotiation — the process of both peers exchanging and testing candidate pairs to find a working network path, which can succeed, fail, or take an unexpectedly long time depending on network conditions. “ICE negotiation is stuck in the ‘checking’ state for ten seconds before it fails — let’s check whether our TURN server credentials are even valid.”

Media track (and renegotiation) — an individual audio or video stream added to a peer connection; adding or removing tracks after the initial connection requires renegotiating the SDP offer/answer exchange. “Adding the screen-share track mid-call requires a renegotiation — we can’t just attach it to the existing peer connection and expect the remote side to pick it up automatically.”

Common Phrases

  • “Is this failing at signaling, or after signaling during ICE negotiation?”
  • “Are we gathering STUN and TURN candidates, or only host candidates?”
  • “Is this an SDP mismatch, or a genuine connectivity failure?”
  • “Does adding this track require a renegotiation, or can it be added to the existing connection?”
  • “Is the TURN relay being used, meaning direct peer-to-peer isn’t working here?”

Example Sentences

Reviewing a pull request: “This code tears down and recreates the whole peer connection just to add a screen-share track — let’s do a proper renegotiation instead, so the existing audio and video tracks aren’t interrupted.”

Explaining a design decision: “We deployed our own TURN server rather than relying on STUN alone, because a meaningful percentage of our users are behind symmetric NATs where STUN-only connectivity consistently fails.”

Describing an incident: “Calls between two specific office networks were failing, and it turned out their firewall was blocking the UDP ports STUN needs — TCP-based TURN as a fallback fixed it.”

Professional Tips

  • Say “signaling failure” versus “ICE negotiation failure” precisely — they point to entirely different parts of the stack and different people usually own the fix.
  • When triaging connection issues, ask “which candidates are we gathering, and which pair actually succeeded?” — this immediately narrows down NAT traversal problems.
  • Use “renegotiation” specifically when describing adding or removing tracks mid-call — it’s the correct term and distinguishes it from a full reconnect.
  • Distinguish “STUN” (discovering your own reachable address) from “TURN” (relaying traffic when direct connection fails) — conflating them misdiagnoses connectivity problems.

Practice Exercise

  1. Explain in two sentences the difference between a signaling failure and an ICE negotiation failure.
  2. Write a one-sentence explanation of when a TURN server is needed instead of STUN alone.
  3. Describe, in your own words, why adding a new media track mid-call requires renegotiation.