WebRtc底层传输模块RTP/RTCP协议知识

哈喽,大家好,我又来了。
前段时间在学WebRtc,刚开始在想这个玩意该如何学习呢?
1,先从接口学起呢?
2,还是从开源代码学起呢?
3,还是直接从核心技术学起然后从WebRtc里面扣下来。

1和2是从上往下学习;3是从下往上学习。觉得还是3学起来价值更高,更有效率。

关于WebRtc是什么,就不用多做介绍了,网上一大堆。它是实时通信解决方案,也是一种实时流媒体各种协议和规则最新标准。

咱们先从传输数据通信协议学起吧,WebRtc采用得是UDP->RTP/RTCP作为传输模块的一部分,负责对发送端采集到的媒体数据进行进行封包,然后交给上层网络模块发送;在接收端RTP/RTCP模块收到上层模块的数据包后,进行解包操作,最后把负载发送到解码模块。因此,RTP/RTCP 模块在WebRTC通信中发挥非常重要的作用。

RTP/RTCP协议是流媒体通信的基石。RTP协议定义流媒体数据在互联网上传输的数据包格式,而RTCP协议则负责可靠传输、流量控制和拥塞控制等服务质量保证。

  • 下面咱们简单认识下RTP/RTCP协议格式和内容
    RFC3550_RTP协议中文版
  • RTP协议格式
    RTP包结构 = RTP包头 + payload载荷数据(媒体数据),包头结构如下:

你可能感兴趣的:(音视频基础知识,webrtc,rtp,rfc)