我发现许多 RFC 说:
必须使用 90 kHz 的时钟速率。
但我没有得到这个的根本原因。
您可以在Colin Perkins 第 154 页的“ RTP:Internet 音频和视频”中找到答案
简而言之,选择这样的速率使得大多数格式共有的帧速率将具有整数时间戳增量,即除法仍然可以有提醒,但它的范围可以忽略不计。
RTP 中的 90kHz 源自 mpeg 传输流中的表示时间戳 (PTS)。PTS 用于同步节目的单独流,例如视频、音频和字幕。
我认为rfc3551中的这种解释似乎更有说服力。
所有这些视频编码都使用 90,000 Hz 的 RTP 时间戳频率,与 MPEG 呈现时间戳频率相同。该频率为典型的 24 (HDTV)、25 (PAL) 和 29.97 (NTSC) 和 30 Hz (HDTV) 帧速率以及 50、59.94 和 60 Hz 场速率产生精确的整数时间戳增量。虽然 90 kHz 是在此配置文件中使用的未来视频编码的推荐速率,但也可以使用其他速率。但是,仅使用视频帧速率(通常在 15 到 30 Hz 之间)是不够的,因为在计算与 RTCP SR 数据包中的 NTP 时间戳相对应的 RTP 时间戳时,这不能为典型的同步要求提供足够的分辨率。时间戳分辨率也必须足以用于接收器报告中包含的抖动估计。
对于这些视频编码中的大多数,RTP 时间戳对 RTP 数据包中包含的视频图像的采样时刻进行编码。如果视频图像占用多个数据包,则所有这些数据包的时间戳都相同。来自不同视频图像的数据包通过不同的时间戳来区分。
这些视频编码中的大多数还指定 RTP 标头的标记位应该在视频帧的最后一个数据包中设置为 1,否则设置为 0。因此,不必等待具有不同时间戳的后续数据包来检测应该显示新帧。