webrtc 代码走读七(FEC8627)

  • Post author:
  • Post category:其他


一、概述




webrtc

发送FlexFEC报文的时候,是同时发送两股流:PT值为102的正常媒体报文。PT值为106的flexfec冗余报文。这两股流使用的是不同的SSRC 。

所以在SDP协商时,需要协商两个信息:PT值、SSRC值。

上面的示例可以看到,媒体视频rtp报文的pt值是100,flexfec冗余报文的PT值时110(报文抓包截图和示例不是对应的),媒体视频RTP报文的ssrc是1234,flexfec冗余报文的ssrc是2345。

对应webrtc的实现代码如下:

1、GetPayloadTypesAndDefaultCodecs 确定PT值


2、 AddFecFrSsrc 确定ssrc。



二、RTP报文格式概述


1)完整RTP报文格式



2)FEC header 定义


1、完整FEC header定义


2、R、F字段定义


2.1 R=0,F=0时,报文格式定义


2.2 R=0,F=1时,报文格式定义



2.3 R=1,F=0时,报文格式定义

2.4 根据代码,目前webrtc 支持R=0 and F=0(Flexible FEC Mask fields indicate source packets)的封装和解析



版权声明:本文为EveryDayOneHour原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。