RTP有效负载(载荷)类型 (RTP Payload Type)
下图为RTP部格式:

*****************************************************
1) V:RTP协议的版本号,占2位,当前协议版本号为2
2) P:填充标志,占1位,如果P=1,则在该报文的尾部填充一个或多个额外的八位组,它们不是有效载荷的一部分。
3) X:扩展标志,占1位,如果X=1,则在RTP报头后跟有一个扩展报头
4) CC:CSRC计数器,占4位,指示CSRC 标识符的个数(作用信源CSRC计数器)
5) M: 标记,占1位,不同的有效载荷有不同的含义,对于视频,标记一帧的结束;对于音频,标记会话的开始。(对于分组中的重要事件可用该位标识)
6) PT: 有效荷载类型,占7位,用于说明RTP报文中有效载荷的类型,如GSM音频、JPEM图像等,在流媒体中大部分是用来区分音频流和视频流的,这样便于客户端进行解析。
7) 序列号:占16位,用于标识发送者所发送的RTP报文的序列号,每发送一个报文,序列号增1。这个字段当下层的承载协议用UDP的时候,网络状况不好的时候可以用来检查丢包。同时出现网络抖动的情况可以用来对数据进行重新排序,序列号的初始值是随机的,同时音频包和视频包的sequence是分别记数的。
8) 时戳(Timestamp):占32位,必须使用90 kHz 时钟频率。时戳反映了该RTP报文的第一个八位组的采样时刻。接收者使用时戳来计算延迟和延迟抖动,并进行同步控制。
9) 同步信源(SSRC)标识符:占32位,用于标识同步信源。该标识符是随机选择的,参加同一视频会议的两个同步信源不能有相同的SSRC。
10) 特约信源(CSRC)标识符:每个CSRC标识符占32位,可以有0~15个。每个CSRC标识了包含在该RTP报文有效载荷中的所有特约信源。
注意
RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式。它一开始被设计为一个多播协议,但后来被用在很多单播应用中。RTP协议常用于流媒体系统(配合RTCP协议),视频会议和一键通(Push to Talk)系统(配合H.323或SIP),使它成为IP电话产业的技术基础。RTP协议和RTP控制协议RTCP一起使用,而且它是建立在用户数据报协议上的。
它作为因特网标准在RFC 3550(该文档的旧版本是RFC 1889)有详细说明。RFC 3551(STD 65,旧版本是RFC 1890)详细描述了使用最小控制的音频和视频会议。
此列表维护并扩展该列表。
可用的格式
PT ![]() | Encoding Name ![]() | Audio/Video (A/V) ![]() | Clock Rate (Hz) ![]() | Channels ![]() | Reference ![]() |
|---|---|---|---|---|---|
| 0 | PCMU | A | 8000 | 1 | [RFC3551] |
| 1 | Reserved | ||||
| 2 | Reserved | ||||
| 3 | GSM | A | 8000 | 1 | [RFC3551] |
| 4 | G723 | A | 8000 | 1 | [Vineet_Kumar][RFC3551] |
| 5 | DVI4 | A | 8000 | 1 | [RFC3551] |
| 6 | DVI4 | A | 16000 | 1 | [RFC3551] |
| 7 | LPC | A | 8000 | 1 | [RFC3551] |
| 8 | PCMA | A | 8000 | 1 | [RFC3551] |
| 9 | G722 | A | 8000 | 1 | [RFC3551] |
| 10 | L16 | A | 44100 | 2 | [RFC3551] |
| 11 | L16 | A | 44100 | 1 | [RFC3551] |
| 12 | QCELP | A | 8000 | 1 | [RFC3551] |
| 13 | CN | A | 8000 | 1 | [RFC3389] |
| 14 | MPA | A | 90000 | [RFC3551][RFC2250] | |
| 15 | G728 | A | 8000 | 1 | [RFC3551] |
| 16 | DVI4 | A | 11025 | 1 | [Joseph_Di_Pol] |
| 17 | DVI4 | A | 22050 | 1 | [Joseph_Di_Pol] |
| 18 | G729 | A | 8000 | 1 | [RFC3551] |
| 19 | Reserved | A | |||
| 20 | Unassigned | A | |||
| 21 | Unassigned | A | |||
| 22 | Unassigned | A | |||
| 23 | Unassigned | A | |||
| 24 | Unassigned | V | |||
| 25 | CelB | V | 90000 | [RFC2029] | |
| 26 | JPEG | V | 90000 | [RFC2435] | |
| 27 | Unassigned | V | |||
| 28 | nv | V | 90000 | [RFC3551] | |
| 29 | Unassigned | V | |||
| 30 | Unassigned | V | |||
| 31 | H261 | V | 90000 | [RFC4587] | |
| 32 | MPV | V | 90000 | [RFC2250] | |
| 33 | MP2T | AV | 90000 | [RFC2250] | |
| 34 | H263 | V | 90000 | [Chunrong_Zhu] | |
| 35-71 | Unassigned | ? | |||
| 72-76 | Reserved for RTCP conflict avoidance | [RFC3551] | |||
| 77-95 | Unassigned | ? | |||
| 96-127 | dynamic | ? | [RFC3551] |
除了RTP中列出的RTP有效载荷格式(编码)之外有效载荷类型表,还有其他有效载荷格式没有是否分配了静态RTP有效负载类型,但使用了动态有效负载型号任务。每个有效负载格式都由一个已注册的下表中列出的媒体子类型。
作为新的有效载荷格式指定后,应将其注册的媒体子类型添加到其中表。
此外,对于RTP有效负载中列出的有效负载格式在上面的Types表中,“编码名称”也被注册为媒体媒体类型“音频”或“视频”下的子类型。时钟频率和这里显示的通道数是这些有效负载的正常值具有正常值的格式。类型名和子类型名都是RFC4288中定义的不区分大小写。
注册程序和注册模板可在 [RFC4855].
除了上表中明确指定PT值的负载类型,还有些负载类型由于诞生的较晚,没有具体的PT值,只能使用动态(dynamic)PT值,即96到127,这就是为什么大家普遍指定H264的PT值为96。下表中列出了没有具体PT值的负载类型。
Media Type ![]() | Subtype ![]() | Clock Rate (Hz) ![]() | Channels (audio) ![]() | Reference ![]() |
|---|---|---|---|---|
| application | 1d-interleaved-parityfec | [RFC6015] | ||
| application | h224 | 4800 | [RFC4573] | |
| application | parityfec | [RFC3009] | ||
| application | raptorfec | [RFC6682] | ||
| application | rtx | [RFC4588] | ||
| application | smpte336m | [RFC6597] | ||
| application | ulpfec | [RFC5109] | ||
| audio | 1d-interleaved-parityfec | [RFC6015] | ||
| audio | 32kadpcm | 8000 | [RFC3802][RFC2421] | |
| audio | ac3 | [RFC4184] | ||
| audio | AMR | 8000 | [RFC4867][RFC3267] | |
| audio | AMR-WB | 16000 | [RFC4867][RFC3267] | |
| audio | amr-wb+ | 72000 | [RFC4352] | |
| audio | ATRAC-ADVANCED-LOSSLESS | [RFC5584] | ||
| audio | atrac-x | [RFC5584] | ||
| audio | atrac3 | 44100 | [RFC5584] | |
| audio | BV16 | 8000 | [RFC4298] | |
| audio | BV32 | 16000 | [RFC4298] | |
| audio | clearmode | 8000 | 1 | [RFC4040] |
| audio | CN | [RFC3389] | ||
| audio | DAT12 | [RFC3190] | ||
| audio | dsr-es201108 | [RFC3557] | ||
| audio | dsr-es202050 | 8000 | [RFC4060] | |
| audio | dsr-es202211 | 8000 | [RFC4060] | |
| audio | dsr-es202212 | 8000 | [RFC4060] | |
| audio | DV | [RFC6469] | ||
| audio | DVI4 | [RFC4856] | ||
| audio | eac3 | [RFC4598] | ||
| audio | EVRC | 8000 | 1 | [RFC4788] |
| audio | EVRC0 | 8000 | 1 | [RFC4788] |
| audio | EVRC1 | 8000 | 1 | [RFC4788] |
| audio | EVRCB | 8000 | 1 | [RFC4788] |
| audio | EVRCB0 | 8000 | 1 | [RFC4788] |
| audio | EVRCB1 | 8000 | 1 | [RFC4788] |
| audio | EVRCWB | [RFC5188] | ||
| audio | EVRCWB0 | [RFC5188] | ||
| audio | EVRCWB1 | [RFC5188] | ||
| audio | fwdred | [RFC6354] | ||
| audio | g719 | 48000 | [RFC5404] | |
| audio | G722 | [RFC4856] | ||
| audio | G7221 | 16000 | 1 | [RFC5577] |
| audio | G723 | [RFC4856] | ||
| audio | G726-16 | 8000 | 1 | [RFC3551][RFC4856] |
| audio | G726-24 | 8000 | 1 | [RFC3551][RFC4856] |
| audio | G726-32 | 8000 | 1 | [RFC3551][RFC4856] |
| audio | G726-40 | 8000 | 1 | [RFC3551][RFC4856] |
| audio | G728 | [RFC4856] | ||
| audio | G729 | [RFC4856] | ||
| audio | G7291 | 16000 | [RFC4749][RFC5459] | |
| audio | G729D | 8000 | 1 | [RFC3551][RFC4856] |
| audio | G729E | 8000 | 1 | [RFC3551][RFC4856] |
| audio | GSM | [RFC4856] | ||
| audio | GSM-EFR | 8000 | 1 | [RFC3551][RFC4856] |
| audio | GSM-HR-08 | 8000 | [RFC5993] | |
| audio | iLBC | 8000 | [RFC3952] | |
| audio | ip-mr_v2.5 | 16000 | [RFC6262] | |
| audio | L8 | [RFC3551][RFC4856] | ||
| audio | L16 | [RFC4856] | ||
| audio | L20 | [RFC3190] | ||
| audio | L24 | [RFC3190] | ||
| audio | LPC | [RFC4856] | ||
| audio | MELP | 8000 | 1 | [RFC8130] |
| audio | MELP600 | 8000 | 1 | [RFC8130] |
| audio | MELP1200 | 8000 | 1 | [RFC8130] |
| audio | MELP2400 | 8000 | 1 | [RFC8130] |
| audio | MP4A-LATM | [RFC3016] | ||
| audio | MPA | 90000 | [RFC3555] | |
| audio | mpa-robust | 90000 | [RFC5219] | |
| audio | mpeg4-generic | [RFC3640][RFC5691][RFC6295] | ||
| audio | parityfec | [RFC5109] | ||
| audio | PCMA | [RFC4856] | ||
| audio | PCMA-WB | 16000 | [RFC5391] | |
| audio | PCMU | [RFC4856] | ||
| audio | PCMU-WB | 16000 | [RFC5391] | |
| audio | QCELP | [RFC3555] | ||
| audio | raptorfec | [RFC6682] | ||
| audio | RED | [RFC2198][RFC3555] | ||
| audio | rtp-midi | [RFC6295] | ||
| audio | rtx | [RFC4588] | ||
| audio | SMV | 8000 | 1 | [RFC3558] |
| audio | SMV0 | 8000 | 1 | [RFC3558] |
| audio | speex | [RFC5574] | ||
| audio | t140c | [RFC4351] | ||
| audio | t38 | [RFC4612] | ||
| audio | telephone-event | [RFC4733] | ||
| audio | tone | [RFC4733] | ||
| audio | uemclip | [RFC5686] | ||
| audio | ulpfec | [RFC5109] | ||
| audio | VDVI | 1 | [RFC3551][RFC4856] | |
| audio | VMR-WB | 16000 | [RFC4348][RFC4424] | |
| audio | vorbis | [RFC5215] | ||
| audio | vorbis-config | [RFC5215] | ||
| text | 1d-interleaved-parityfec | [RFC6015] | ||
| text | fwdred | [RFC6354] | ||
| text | parityfec | [RFC3009] | ||
| text | raptorfec | [RFC6682] | ||
| text | red | 1000 | [RFC4102] | |
| text | rtx | [RFC4588] | ||
| text | t140 | 1000 | [RFC4103] | |
| text | ulpfec | [RFC5109] | ||
| video | BMPEG | 90000 | [RFC2343][RFC3555] | |
| video | 1d-interleaved-parityfec | [RFC6015] | ||
| video | 3gpp-tt | [RFC4396] | ||
| video | BT656 | 90000 | [RFC2431][RFC3555] | |
| video | celB | [RFC3555] | ||
| video | DV | 90000 | [RFC6469] | |
| video | H261 | [RFC4587] | ||
| video | H263 | 90000 | [RFC4628] | |
| video | H263-1998 | 90000 | [RFC4629] | |
| video | H263-2000 | 90000 | [RFC4629] | |
| video | H264 | [RFC6184] | ||
| video | H264-RCDO | 90000 | [RFC6185] | |
| video | H264-SVC | [RFC6190] | ||
| video | JPEG | [RFC3555] | ||
| video | JPEG2000 | [RFC5371] | ||
| video | MP1S | 90000 | [RFC2250][RFC3555] | |
| video | MP2P | 90000 | [RFC2250][RFC3555] | |
| video | MP2T | [RFC3555] | ||
| video | MP4V-ES | 90000 | [RFC3016] | |
| video | mpeg4-generic | [RFC3640] | ||
| video | MPV | [RFC3555] | ||
| video | nv | [RFC4856] | ||
| video | parityfec | [RFC5109] | ||
| video | pointer | 90000 | [RFC2862] | |
| video | raptorfec | [RFC6682] | ||
| video | raw | 90000 | [RFC4175] | |
| video | rtx | [RFC4588] | ||
| video | SMPTE292M | [RFC3497] | ||
| video | ulpfec | [RFC5109] | ||
| video | vc1 | 90000 | [RFC4425] | |
| video | vc2 | 90000 | [RFC8450] |
详情请参考官方文档:https://www.ietf.org/assignments/rtp-parameters/rtp-parameters.xml
转自:https://blog.csdn.net/qq_40732350/article/details/88374707

浙公网安备 33010602011771号