WebRTC(Web Real-Time Communication)是一種能讓瀏覽器與應用程式進行即時影音通訊的技術標準。透過 UDP 傳輸與 RTP 協定,WebRTC 能實現 sub-second latency(約 300–500ms),是目前最主流的 Low Latency Streaming 技術之一。
與 HLS 或 RTMP 不同,WebRTC 不需要影片分段或額外播放器插件,瀏覽器即可直接進行影音傳輸,因此廣泛應用於:
- 即時視訊會議
- Live Shopping
- Online Auction
- Remote Monitoring
- Telemedicine
WebRTC(Web Real-Time Communication) 是一項開源技術,允許瀏覽器與行動應用程式透過 API 直接進行:
- 即時影音傳輸
- 即時語音通訊
- 即時資料通道(DataChannel)
WebRTC 的最大特點是能實現 Ultra Low Latency Streaming。
在典型的串流架構中:
| 技術 | 主要用途 |
| RTMP | 推流(Ingest) |
| HLS | 大規模 CDN 分發 |
| WebRTC | 低延遲即時播放 |
因此現代影音平台常使用 Hybrid Streaming Architecture。
WebRTC 之所以能達到 Sub-second latency,主要原因在於其傳輸方式與架構設計。
WebRTC 主要使用 UDP(User Datagram Protocol)。
與 TCP 不同:
TCP
- 有重傳機制
- 需要確認封包
- 延遲較高
UDP
- 不重傳封包
- 傳輸速度快
- 延遲低
這使 WebRTC 更適合即時影音。
WebRTC 使用:
RTP (Real-time Transport Protocol)
負責影音資料封包。
SRTP (Secure RTP)
提供加密與安全性。
透過 RTP,影音資料能即時傳輸,而不需要像 HLS 那樣先產生影片分段。
WebRTC 架構包含多個核心元件。
WebRTC 最初設計為 P2P 通訊。
兩個瀏覽器可以直接交換影音資料,而不需要經過中央伺服器。
但在大規模直播或多人會議時,通常會使用:
- SFU(Selective Forwarding Unit)
- MCU(Multipoint Control Unit)
來管理媒體流。
WebRTC 本身並沒有定義 signaling protocol,因此需要一個 Signaling Server。
其主要工作包括:
- 交換 SDP
- 協商 Codec
- 交換 ICE Candidate
常見技術:
- WebSocket
- HTTP API
由於多數用戶位於 NAT 或防火牆後方,WebRTC 需要 NAT traversal 技術。
核心機制包含:
ICE (Interactive Connectivity Establishment)
負責尋找最佳連線路徑。
STUN Server
幫助裝置找到 public IP。
TURN Server
在 P2P 無法建立連線時作為 relay。
| 技術 | 延遲 | 傳輸 | 典型用途 |
| WebRTC | 0.3–0.5 秒 | UDP | 即時互動 |
| RTMP | 3–10 秒 | TCP | 推流 |
| HLS | 10–30 秒 | HTTP | CDN 分發 |
因為 WebRTC:
- 不需要 Video Segments
- RTP 即時傳輸
- UDP 即時封包
而 HLS 需要等待影片片段生成,因此延遲較高。
WebRTC 延遲通常低於 500ms。
Chrome、Safari、Firefox 都原生支援 WebRTC。
WebRTC 支援:
- Video call
- Voice chat
- DataChannel
P2P 架構在大規模觀看時會遇到限制,因此通常需要:
- Media Server
- SFU
- Cluster
部署 WebRTC 通常需要:
- Signaling Server
- STUN Server
- TURN Server
- Media Server
WebRTC 在多個產業中被廣泛使用。
例如企業遠距會議或線上協作。
直播購物需要毫秒級互動。
競標系統需要即時同步。
安防監控需要低延遲影像。
遠距醫療需要即時影音溝通。
WebRTC 已成為 Low Latency Streaming 的核心技術。
透過 UDP、RTP 與 NAT traversal 技術,WebRTC 能提供 Sub-second latency 的即時影音體驗。
然而在大規模應用場景中,仍需要搭配 Streaming Server 與可擴展架構,才能同時滿足低延遲與高併發需求。
如果你的應用需要 Low Latency Streaming 或 WebRTC 即時影音,通常需要一個支援 WebRTC 的 Streaming Server。
例如 Ant Media Server 提供完整的 WebRTC streaming infrastructure:
- WebRTC publishing
- Ultra low latency streaming
- SFU architecture
- Cluster scaling
透過專業的 Streaming Server,可以大幅降低 WebRTC 系統的部署與維運複雜度。
👉 https://www.iocloudtech.com/zh-TW/service/antmedia
一般 WebRTC 延遲約 300–500ms。
可以。WebRTC 非常適合 interactive live streaming。
通常 WebRTC 不直接使用 CDN,而是透過 SFU 或 streaming cluster 進行擴展。
WebRTC:低延遲互動
HLS:大規模分發