美文网首页
RTCP(二): SR--Sender Reports 接收者报

RTCP(二): SR--Sender Reports 接收者报

作者: C_GO流媒体后台开发 | 来源:发表于2018-12-01 19:58 被阅读15次

作者:IT荒野猎人
来源:CSDN
原文:https://blog.csdn.net/sweibd/article/details/79344509

一. 前言

发送rtp报文端向接受者发送SR报文,主要目的是方便接收方做好音视频同步工作。

二. RTCP SR格式

发送者报告SR,其RTCP类型payload type是200。主要信息共24bytes,也就是6 words,如图2.1

图2.1

2.1 NTP timestamp

NTP timestamp是64位无符号整型,表示该SR报文发送的时刻。

NTP timestamp的含义,

  • 高32位: 为代表01.01.1900到现在的秒数;

  • 低32位: 单位是微秒数的4294.967296(=232/106)倍;

struct ntptime
{
unsigned int integer; //1900年以来的秒数
unsigned int fraction;//小数部份,单位是微秒数的4294.967296(=232/106)倍
};
timeval到ntp时间戳的转换:
ntptime.integar=timeval.tv_sec+JAN_1970;
ntptime.fraction=timeva.tv_usec* 0x100000000/1000000;

2.2 RTP timestamp

RTP timestamp字段同ntp stamp字段表示的时刻是一样的,但是应用的是rtp时间戳格式。

2.3 packet count and octet count

packet count: 发送方的发送包个数

packet octet: 发送方的发送字节数

周期都是整个会话过程中,所以可能出现数字翻转,接收方需要计算是否出现数字翻转的问题。

三、SR的常用方式

3.1 rtp数据和包数的统计信息

通过packet count和packet octet来获取到发送方对应sr间隔的速率,也能通过这两者得到平均的包大小。

包平均大小=packet octet/packet count.

3.2 音视频同步

rtp时间戳与ntp时间戳的关系,也就是rtp timstamp和ntp timestamp的关系。

这个常用于接收端来进行音视频同步。

相关文章

网友评论

      本文标题:RTCP(二): SR--Sender Reports 接收者报

      本文链接:https://www.haomeiwen.com/subject/xtwrcqtx.html