Firefox WebRTC: Screen Sharing, IP Leaks, and Developer Diagnostics
Firefox has comprehensive WebRTC support — and some specific settings and behaviors that matter for developers building real-time applications. What WebRTC Enables WebRTC (Web Real-Time Communication) is the browser API that powers: Video calls (Google Meet, Jitsi, Whereby, etc.) Voice calls P2P file sharing Screen sharing Browser-based game multiplayer It lets browsers communicate directly…
Firefox offers comprehensive WebRTC (Web Real-Time Communication) support for developers building real-time applications. WebRTC enables video calls, voice calls, P2P file sharing, screen sharing, and browser-based multiplayer games.
On Linux, Firefox uses the XDG Desktop Portal for screen sharing, while on Windows and macOS it uses native APIs. To test screen sharing permissions, open the browser console and run `navigator.mediaDevices.getDisplayMedia({video: true})`.
WebRTC can leak your local IP address even with a VPN because the browser discovers IP candidates during ICE negotiation, which may include your LAN or public IP. Firefox provides various settings to mitigate this:
1. Disable WebRTC entirely using `about:config` with `media.peerconnection.enabled = false`, though this breaks video calls.
2. Enable `media.peerconnection.ice.default_address_only = true` to only expose the default route IP, a less aggressive option that may still work for video calls.
3. Set `media.peerconnection.ice.no_host = true` to suppress LAN IP candidates, balancing privacy with functional calls.
For VPN users, `ice.no_host = true` is recommended. To test for IP leaks, search for "WebRTC leak test" on various websites.
Firefox supports multiple codecs for video and audio. Video codecs include VP8, VP9, H.264, and AV1. Audio codecs include Opus (primary), G.711, G.722, and H.264. H.264 hardware decoding is available on Linux through VA-API.
For per-site camera and microphone permissions, Firefox shows a dialog upon first request, which is then stored and not prompted again for that origin. You can manage these permissions in Firefox settings under "Privacy & Security" → "Permissions". The "From address bar" option allows you to review and revoke permissions for the current site directly from the browser address bar.
Debugging WebRTC in Firefox is facilitated by the `about:webrtc` page, which displays active peer connections, ICE candidates, DTLS certificate info, and various statistics like bitrate, packet loss, and jitter. This page serves as Chromium's equivalent to `chrome://webrtc-internals`, aiding developers in diagnosing and improving video call quality.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.