# WebRTC

Sub-second video delivery for real-time communication and ultra-low-latency streaming.

Overview

## What It Is

Web Real-Time Communication (WebRTC) is a set of APIs and protocols that enables real-time audio, video, and data communication directly between browsers and devices without plugins. Standardized by the W3C and IETF, WebRTC is built into every major browser — Chrome, Firefox, Safari, and Edge. WebRTC achieves sub-500ms glass-to-glass latency using UDP transport with DTLS encryption and SRTP media protection. It supports peer-to-peer connections (reducing server costs for small sessions) and server-mediated architectures (SFUs/MCUs for larger audiences). WebRTC is the foundation of Google Meet, Zoom (web client), Discord, and thousands of video calling applications.

Decision Guide

## When to Choose WebRTC

Choose WebRTC when:

- You need sub-second latency — video calls, live auctions, interactive classrooms, and watch parties require <500ms delay.
- You are building browser-based video communication — WebRTC is the only protocol natively supported by all browsers without plugins.
- You need peer-to-peer for small sessions — P2P reduces server costs for 1:1 or small group video calls.

Consider alternatives when:

- You are ingesting video to a streaming platform — [RTMP](https://cloud.qencode.com/protocols/rtmp) is the standard ingest protocol. WebRTC is primarily for delivery and P2P.
- You need reliable delivery over lossy networks — [SRT](https://cloud.qencode.com/protocols/srt) has more configurable error correction for contribution feeds.
- You are delivering to large audiences (10,000+) — Standard [HLS](https://cloud.qencode.com/video-formats-codecs/hls) or [DASH](https://cloud.qencode.com/video-formats-codecs/mpeg-dash) scales more cost-effectively for broadcast-size audiences.

Reference

## Key Characteristics

|     |     |
| --- | --- |
| Full name | Web Real-Time Communication |
| Developed by | W3C / IETF, based on Google's acquisition of Global IP Solutions (2011) |
| Transport layer | UDP with DTLS (encryption) and SRTP (media) |
| Typical latency | <500ms (glass-to-glass) |
| Encryption | Mandatory — DTLS for signaling, SRTP for media (always encrypted) |
| Error correction | NACK-based retransmission, FEC (Forward Error Correction) |
| NAT traversal | STUN/TURN servers required for most network configurations |
| Max bitrate | Network-bound; typically 2–10 Mbps per stream |
| Open source | Yes — libwebrtc (Google), Pion (Go), mediasoup (Node.js) |
| Typical use case | Video calls, watch parties, live auctions, real-time collaboration |

Implementation

## How Qencode Handles WebRTC

Qencode produces WebRTC-compatible output by encoding to codecs and containers that WebRTC players consume — H.264 in MP4, VP8/VP9 in WebM. For live streaming workflows, Qencode supports HLS output for broad-reach delivery.

Comparison

## WebRTC vs. RTMP

|  | WebRTC | RTMP |
| --- | --- | --- |
| Primary role | Delivery + P2P | Ingest |
| Latency | <500ms | 3–5s |
| Transport | UDP (DTLS/SRTP) | TCP |
| Encryption | Mandatory | Optional (RTMPS) |
| Browser support | Native (all browsers) | Requires Flash or server relay |
| Best for | Interactive, real-time | Platform ingest |

For a detailed RTMP breakdown, see [RTMP](https://cloud.qencode.com/protocols/rtmp)

## Calculate cost of WebRTC Protocol

Minutes streamed

Total Cost

$0.01

1

1M

Output resolution

480

FPS

30

| Transcoding(minutes streamed) | Cost/Minute |
| --- | --- |
| SDincludes 480p, 240p | $0.01 |
| HDincludes 1080p, 720p | $0.02 |

| Simulcast / Restream | Cost/GB |
| --- | --- |
|  | $0.04 |

Explore More

## Related Technologies

[**RTMP** 
\
\
The standard ingest protocol that feeds live content into WebRTC delivery pipelines.](https://cloud.qencode.com/protocols/rtmp)

### Simulcast

Deliver multiple quality layers simultaneously for WebRTC viewers.

### Multiple Playback IDs

Serve different latency tiers from a single live source.

We love creating powerful solutions that are aligned with the needs of your business.

Please send us a message if you have a question or [Schedule a call](https://meet.qencode.com/meetings/murad/qencode-meeting) for a demo to discuss your integration.
