IsNewerTimestamp
- 知乎大神的分析: 流媒体传输协议之RTP
RTP 包:32位时间戳、16位序号
- Sequence number:16 bits 每发送一个RTP包该序列号+1,RTP包的接受者可以通过它来确定丢包情况并且利用它来重排包的顺序。这个字段的初始值应该是随机的,这会让known-plaintext更加困难。
- Timestamp:32 bits 时间戳反映了RTP数据包生成第一块数据时的时刻。这个时间戳必须恒定地线性增长,因为它会被用来同步数据包和计算网络抖动,此外这个时钟解决方案必须有足够的精度,像是一个视频帧只有一个时钟嘀嗒这样是肯定不够的。如果RTP包是周期性的生成的话,通常会使用采样时钟而不是系统时钟,例如音频传输中每个RTP报文包含20ms的音频数据,那么相邻的下一个RTP报文的时间戳就是增加20ms而不是获取系统时间。
- 和序列号一样时间戳的初始值也应该是随机的,而且如果多个RTP包是一次性生成的,那它们就会有相同的时间戳。 不同媒体流的时间戳可能以不同的步幅增长,它们通常都是独立的,具有随机的偏移。
- 这些时间戳虽然足以重建单一媒体流的时序,但是直接比较多个媒体流的时间戳是没办法进行同步的。每一时间戳都会和参考时钟(wallclock)组成时间对,而且需要同步的不同流会共用同一个参考时钟,通过对比不同流的时间
文章来源地址https://www.toymoban.com/news/detail-705270.html
文章来源:https://www.toymoban.com/news/detail-705270.html
到了这里,关于【webrtc】IsNewerTimestamp 时间戳新旧比较及使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!