<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>WebRTC.wiki</title><description>Practical tips, tricks, and hard-earned tweaks to make your WebRTC stack connect faster, handle edge cases, and run reliably in production.</description><link>https://webrtc.wiki/</link><item><title>WebRTC behind a firewall: TURN over TLS on port 443</title><link>https://webrtc.wiki/articles/turn-over-tls/</link><guid isPermaLink="true">https://webrtc.wiki/articles/turn-over-tls/</guid><description>Calls that fail on corporate networks usually need TURN over TLS on 443. How to configure it, confirm it works, and why it should stay the last resort.</description><pubDate>Mon, 28 Sep 2026 23:00:00 GMT</pubDate><category>turn</category><category>ice</category></item><item><title>WebRTC E2EE with SFrame: what your SFU can still read</title><link>https://webrtc.wiki/articles/what-your-sfu-can-still-read/</link><guid isPermaLink="true">https://webrtc.wiki/articles/what-your-sfu-can-still-read/</guid><description>SFrame hides WebRTC media from the SFU, not the metadata. Your server still sees who spoke, when and how loudly, from the audio level header extension.</description><pubDate>Sun, 27 Sep 2026 23:00:00 GMT</pubDate><category>dtls</category></item><item><title>WebRTC bitrate stuck low? maxBitrate is only a ceiling</title><link>https://webrtc.wiki/articles/max-bitrate-is-a-ceiling/</link><guid isPermaLink="true">https://webrtc.wiki/articles/max-bitrate-is-a-ceiling/</guid><description>You set maxBitrate to 2.5 Mbps and WebRTC sends 700 kbps. The congestion controller picks the rate. How GCC decides, and which getStats fields show why.</description><pubDate>Tue, 01 Sep 2026 23:00:00 GMT</pubDate><category>rtp</category></item><item><title>Why WebRTC video freezes, and how getStats tells you</title><link>https://webrtc.wiki/articles/video-freeze/</link><guid isPermaLink="true">https://webrtc.wiki/articles/video-freeze/</guid><description>WebRTC video freezes come from loss, keyframe waits, jitter or dropped frames. The getStats counters that tell them apart, and the fix for each.</description><pubDate>Sat, 29 Aug 2026 23:00:00 GMT</pubDate><category>rtp</category></item><item><title>WebRTC DTLS handshake failed: how to find out why</title><link>https://webrtc.wiki/articles/dtls-handshake-failed/</link><guid isPermaLink="true">https://webrtc.wiki/articles/dtls-handshake-failed/</guid><description>ICE says connected, then connectionState goes to failed. That is the DTLS handshake, and RTCDtlsTransport&apos;s error event names the exact cause.</description><pubDate>Sun, 23 Aug 2026 23:00:00 GMT</pubDate><category>dtls</category></item><item><title>Stop munging SDP: the WebRTC APIs that replace it</title><link>https://webrtc.wiki/articles/stop-munging-sdp/</link><guid isPermaLink="true">https://webrtc.wiki/articles/stop-munging-sdp/</guid><description>Editing SDP before setLocalDescription breaks the WebRTC spec and still works in every browser. The API that replaces each munge, and the one case with none.</description><pubDate>Sun, 23 Aug 2026 23:00:00 GMT</pubDate><category>sdp</category></item><item><title>Faster WebRTC call setup with iceCandidatePoolSize</title><link>https://webrtc.wiki/articles/ice-candidate-pool/</link><guid isPermaLink="true">https://webrtc.wiki/articles/ice-candidate-pool/</guid><description>iceCandidatePoolSize gathers STUN and TURN candidates before the offer exists. In Chromium it cut gathering from 456ms to 2ms. It only works once.</description><pubDate>Sat, 22 Aug 2026 23:00:00 GMT</pubDate><category>ice</category><category>turn</category></item><item><title>Fast WebRTC reconnection without a full ICE restart</title><link>https://webrtc.wiki/articles/reconnection/</link><guid isPermaLink="true">https://webrtc.wiki/articles/reconnection/</guid><description>When a phone moves from Wi-Fi to cellular, an ICE restart costs a full offer/answer. Against your own SFU there are faster ways to move the call.</description><pubDate>Fri, 21 Aug 2026 23:00:00 GMT</pubDate><category>ice</category></item></channel></rss>