Webrtc 基础传输技术架构:
媒体流的传输到对等端,涉及到媒体信息协商、网络建连协商、网络传输技术。
RTP(Real-time Transport Protocol)通过IP网络实时传输音频和视频。遵循RFC3550。
大多数RTP应用都是基于UDP构建的,并额外提供抖动补偿,包丢失检测和无序传递检测功能。RTP也支持TCP,但应用的少,因为TCP更注重可靠性而不是实时性。
RTP主要特点:
*)具有较低的延时
*)对端接收到RTP数据包后,需要根据数据包的序列号和时间戳进行重新组合
*)支持多播(multicast)
*)可用于音视频通话之外的场景,如实时数据流,状态实时更新,控制信息传输等连续数据传输场景
RTP本身并没有提供服务质量保障功能(Quality of Service,Qos),所以,在WRBRTC中,RTP需要结合RTCP使用。
RTP会为每个媒体流建立一个会话,即音频和视频流使用单独的RTP会话,这样接收端能选择性地接收媒体流。RTP使用的端口号为偶数,每个关联的RTCP为下一个较高的奇数,端口范围为1024~65535.
1.RTP 配置文件于载荷
RTP标头数据中不包含媒体信息,而是在单独的RTP配置文件(profile)和有效载荷(payload)格式中提供。RTP对每类应用(音频或者视频)都定义了一个配置文件和至少一个有效的载荷格式。
载荷类型 |
名称 |
类型 |
通道数 |
频率 |
默认包 |
参考规范 |
0 |
PCMU |
audio |
1 |
8000 |
20 |
RFC3551 |
8 |
PCMA |
au |