Video Conferencing System Design (Low-Latency Real-Time Media)

Design a video conferencing platform like Zoom that enables real-time video and audio communication between multiple participants. The system should support screen sharing, recording, and handle hundreds of participants per meeting.

Constraints

Functional

Video/audio calls, screen sharing, recording, chat, meeting rooms (create/join), mute/video/remove, optional breakout and waiting room

Non-functional

< 150ms latency, HD/4K, thousands of concurrent meetings, 99.9% uptime, bandwidth efficiency, mobile support

Scale

100M users, 10M DAU; 1M meetings/day, ~50K concurrent; 250K concurrent participants; ~10 Mbps per 5-participant meeting, 2.5 Tbps peak; ~50 TB/day recordings

Stages ahead

1Requirement Analysis
2API Design
3High-Level Design
4HLD Extensions
5Trade-offs