webrtc-sdp-negotiation

Installation
SKILL.md

SDP Negotiation & ICE

Source: MDN Introduction to WebRTC protocols, Google Developers Getting started with peer connections, MDN RTCPeerConnection.setLocalDescription()

Purpose

This is the core handshake that establishes a WebRTC peer-to-peer connection. It covers the SDP offer/answer exchange (what media/codecs each peer supports) and ICE candidate gathering (how to route around NATs/firewalls). Signaling — the channel for exchanging this metadata — is not defined by WebRTC and must be implemented separately (WebSocket, REST, etc.).

When to Use

  • Setting up any WebRTC RTCPeerConnection between two endpoints
  • Implementing the offer/answer lifecycle (including renegotiation for adding/removing tracks mid-session)
  • Configuring ICE servers (STUN/TURN) for NAT traversal
  • Debugging connection failures or SDP mismatches

Basic Usage

Installs
1
First Seen
Jun 19, 2026