WebRTC(Web 实时通信)是一项用于实现浏览器间实时音视频通信的开放标准。它提供了一组 API,使开发者可以在 Web 应用程序中实现点对点的音视频通信,而无需借助插件或第三方软件。在本文中,我们将探讨 WebRTC 在 Web 前端开发中的应用,并解析一些常见问题。
1. WebRTC 的基本原理
WebRTC 基于三个核心技术:音频视频传输、网络传输和信令传输。
-
音频视频传输:WebRTC 使用实时传输协议(Real-Time Transport Protocol,简称 RTP)来传输音频和视频数据。音频和视频数据通过 RTP 封装后,可以通过 UDP 或 TCP 协议进行传输。
-
网络传输:WebRTC 使用用户数据报协议(User Datagram Protocol,简称 UDP)或传输控制协议(Transmission Control Protocol,简称 TCP)来传输封装后的 RTP 数据。UDP 适用于实时性要求高的场景,而 TCP 适用于对数据传输可靠性要求较高的场景。
-
信令传输:WebRTC 使用信令传输控制协议(Session Traversal Utilities for NAT,简称 STUN)和会话发起协议(Session I