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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM