RTP payload formats: Difference between revisions

Content deleted Content added
 
(38 intermediate revisions by 3 users not shown)
Line 2:
The [[Real-time Transport Protocol]] (RTP) specifies a general-purpose data format and [[network protocol]] for transmitting digital media streams on [[Internet Protocol]] (IP) networks. The details of media encoding, such as signal sampling rate, frame size and timing, are specified in an '''RTP payload format'''. The format parameters of the RTP payload are typically communicated between transmission endpoints with the [[Session Description Protocol]] (SDP), but other protocols, such as the [[XMPP|Extensible Messaging and Presence Protocol]] (XMPP) may be used.
 
==AudioPayload types and video payload typesformats==
The technical parameters of payload formats for audio and video streams are standardised.{{Ref RFC|3551}}
The standard also describes the process of registering new payload types with IANA; additional payload formats and payload types are defined in the following specifications:.
* {{Sum RFC|3550|ref=yes}}
* {{Sum RFC|3551|ref=yes}}
* {{Sum RFC|3611|ref=yes}}
* {{Sum RFC|4856|ref=yes}}
 
==Text messaging payload types==
Payload formats and types for text messaging are defined in the following specifications:
* {{Sum RFC|4103|ref=yes|notes=yes}}
* {{Sum RFC|9071|ref=yes}}
 
==MIDI payload types==
Payload formats and types for [[MIDI]] are defined in the following specifications:
*{{Sum RFC|6295|ref=yes}}
*{{Sum RFC|4696|ref=yes}}
 
==Audio and video payload types==
Payload formats and types for audio and video are defined in the following specifications:
* {{Sum RFC|2029|ref=yes}}
* {{Sum RFC|2190|ref=yes}}
* {{Sum RFC|2198|ref=yes}}
* {{Sum RFC|2250|ref=yes}}
* {{Sum RFC|2343|ref=yes}}
* {{Sum RFC|2435|ref=yes}}
* {{Sum RFC|2586|ref=yes}}
* {{Sum RFC|2658|ref=yes}}
* {{Sum RFC|3190|ref=yes}}
* {{Sum RFC|3389|ref=yes}}
* {{Sum RFC|3497|ref=yes}}
* {{Sum RFC|3640|ref=yes}}
* {{Sum RFC|3952|ref=yes}}
* {{Sum RFC|4175|ref=yes}}
* {{Sum RFC|4184|ref=yes}}
* {{Sum RFC|4352|ref=yes}}
* {{Sum RFC|4587|ref=yes}}
* {{Sum RFC|4598|ref=yes}}
* {{Sum RFC|4629|ref=yes}}
* {{Sum RFC|4733|ref=yes}}
* {{Sum RFC|4749|ref=yes}}
* {{Sum RFC|4788|ref=yes}}
* {{Sum RFC|4867|ref=yes}}
* {{Sum RFC|5188|ref=yes}}
* {{Sum RFC|5215|ref=yes}}
* {{Sum RFC|5371|ref=yes}}
* {{Sum RFC|5391|ref=yes}}
* {{Sum RFC|5404|ref=yes}}
* {{Sum RFC|5574|ref=yes}}
* {{Sum RFC|5577|ref=yes}}
* {{Sum RFC|5584|ref=yes}}
* {{Sum RFC|5686|ref=yes}}
* {{Sum RFC|5993|ref=yes}}
* {{Sum RFC|6184|ref=yes}}
* {{Sum RFC|6190|ref=yes}}
* {{IETF RFC|3640}}, ''RTP Payload Format for Transport of MPEG-4 Elementary Streams''
* {{Sum RFC|6416|ref=yes}}
* {{IETF RFC|6416}}, ''RTP Payload Format for [[MPEG-4]] Audio/Visual Streams''
* {{Sum RFC|6469|ref=yes}}
* {{IETF RFC|2250}}, ''RTP Payload Format for [[MPEG1]]/[[MPEG-2 Video|MPEG2 Video]]''
* {{Sum RFC|7310|ref=yes}}
* {{IETF RFC|7798}}, ''RTP Payload Format for [[High Efficiency Video Coding]] (HEVC)''
* {{Sum RFC|7587|ref=yes}}
* {{IETF RFC|2435}}, ''RTP Payload Format for JPEG-compressed Video''
* {{Sum RFC|7741|ref=yes}}
* {{IETF RFC|4587}}, ''RTP Payload Format for [[H.261]] Video Streams''
* {{Sum RFC|7798|ref=yes}}
* {{IETF RFC|2658}}, ''RTP Payload Format for [[PureVoice]] Audio Video''
* {{Sum RFC|9134|ref=yes}}
* {{IETF RFC|4175}}, ''RTP Payload Format for Uncompressed Video''
* {{Sum RFC|9607|ref=yes}}
* {{IETF RFC|7587}}, ''RTP Payload Format for the [[Opus (audio format)|Opus]] Speech and Audio Codec''
* {{Sum RFC|9628|ref=yes}}
* {{IETF RFC|9134}}, ''RTP Payload Format for [[JPEG XS]]''
* {{IETF RFC|9607}}, ''RTP Payload Format for the [[Secure Communications Interoperability Protocol]] (SCIP) Codec''
 
Payload identifiers 96–127 are used for payloads defined dynamically during a session. It is recommended to dynamically assign port numbers, although port numbers 5004 and 5005 have been registered for use of the profile when a dynamically assigned port is not required.
Line 44 ⟶ 91:
|20
|ITU-T [[G.711]] PCM [[μ-Law]] audio 64 kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 55 ⟶ 102:
|
|reserved, previously [[FS-1016]] [[CELP]] audio 4.8 kbit/s
|{{IETF RFC |3551, previously RFC 1890|link=no}}
|-
 
Line 66 ⟶ 113:
|
|reserved, previously ITU-T [[G.721]] [[ADPCM]] audio 32 kbit/s or ITU-T [[G.726]] audio 32 kbit/s
|{{IETF RFC |3551, previously RFC 1890|link=no}}
|-
 
Line 77 ⟶ 124:
|20
|European [[GSM-FR|GSM Full Rate]] audio 13 kbit/s (GSM 06.10)
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 88 ⟶ 135:
|30
|ITU-T [[G.723.1]] audio
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 99 ⟶ 146:
|20
|[[Interactive Multimedia Association|IMA]] [[ADPCM]] audio 32 kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 110 ⟶ 157:
|20
|[[Interactive Multimedia Association|IMA]] [[ADPCM]] audio 64 kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 121 ⟶ 168:
|20
|Experimental [[Linear predictive coding|Linear Predictive Coding]] audio 5.6 kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 132 ⟶ 179:
|20
|ITU-T G.711 PCM [[A-Law]] audio 64 kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 143 ⟶ 190:
|20
|ITU-T [[G.722]] audio 64 kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 154 ⟶ 201:
|20
|[[Linear PCM]] 16-bit Stereo audio 1411.2 kbit/s,{{Ref RFC|2586}}{{Ref RFC|3108|rp=62}}{{Ref RFC|4856|rp=18}} uncompressed
|{{IETF RFC|3551|link=no}}{{Rp|p=27}}
|[https://tools.ietf.org/html/rfc3551#page-27 RFC 3551, Page 27]
|-
 
Line 165 ⟶ 212:
|20
|[[Linear PCM]] 16-bit audio 705.6 kbit/s, uncompressed
|{{IETF RFC|3551|link=no}}{{Rp|p=27}}
|[https://tools.ietf.org/html/rfc3551#page-27 RFC 3551, Page 27]
|-
 
Line 176 ⟶ 223:
|20
|[[QCELP|Qualcomm Code Excited Linear Prediction]]
|{{IETF RFC|2658|link=no}}, {{IETF RFC|3551|link=no}}{{Rp|p=28}}
|RFC 2658, [https://tools.ietf.org/html/rfc3551#page-28 RFC 3551]
|-
 
Line 187 ⟶ 234:
|
|[[Comfort noise]]. Payload type used with audio codecs that do not support comfort noise as part of the codec itself such as [[G.711]], [[G.722.1]], [[G.722]], [[G.726]], [[G.727]], [[G.728]], [[GSM 06.10]], [[Siren (codec)|Siren]], and RTAudio.
|RFC{{IETF RFC|3389|link=no}}
|-
 
Line 198 ⟶ 245:
|
|[[MPEG-1]] or [[MPEG-2]] audio only
|{{IETF RFC|2250|link=no}}, {{IETF RFC|3551|link=no}}
|RFC 3551, RFC 2250
|-
 
Line 209 ⟶ 256:
|20
|ITU-T [[G.728]] audio 16 kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 220 ⟶ 267:
|20
|[[Interactive Multimedia Association|IMA]] [[ADPCM]] audio 44.1 kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 231 ⟶ 278:
|20
|IMA ADPCM audio 88.2 kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 242 ⟶ 289:
|20
|ITU-T [[G.729]] and G.729a audio 8&nbsp;kbit/s; Annex B is implied unless the <code>annexb=no</code> parameter is used
|{{IETF RFC|3551|link=no}},{{Rp|p=20}} {{IETF RFC|4856|link=no}}{{Rp|p=12}}
|[https://tools.ietf.org/html/rfc3551#page-20 RFC 3551, Page 20], [https://tools.ietf.org/html/rfc3555#page-15 RFC 3555, Page 15]
|-
 
Line 253 ⟶ 300:
|
|reserved, previously [[comfort noise]]
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 264 ⟶ 311:
|
|[[Sun Microsystems|Sun]] CellB video<ref>[https://docs.oracle.com/cd/E19504-01/802-5863/802-5863.pdf XIL Programmer's Guide], Chapter 22 "CellB Codec". August 1997. Retrieved on 2014-07-19.</ref>
|RFC{{IETF RFC|2029|link=no}}
|-
 
Line 275 ⟶ 322:
|
|[[JPEG]] video
|RFC{{IETF RFC|2435|link=no}}
|-
 
Line 286 ⟶ 333:
|
|[[Xerox PARC]]'s Network Video (nv)<ref>[https://www.cs.columbia.edu/~hgs/rtp/nv.html nv - network video on Henning Schulzrinne's website], [https://www.dgp.toronto.edu/tp/techdocs/NetVid.html Network Video on The University of Toronto's website], Retrieved on 2009-07-09.</ref><ref>[https://github.com/ronf/nv Ron Frederick Github with source code]</ref>
|{{IETF RFC|3551|link=no}}{{Rp|p=32}}
 
|[https://tools.ietf.org/html/rfc3551#page-32 RFC 3551, Page 32]
|-
 
Line 298 ⟶ 344:
|
|ITU-T [[H.261]] video
|RFC{{IETF RFC|4587|link=no}}
|-
 
Line 309 ⟶ 355:
|
|MPEG-1 and MPEG-2 video
|RFC{{IETF RFC|2250|link=no}}
|-
 
Line 320 ⟶ 366:
|
|MPEG-2 [[MPEG transport stream|transport stream]]
|RFC{{IETF RFC|2250|link=no}}
|-
 
Line 331 ⟶ 377:
|
|[[H.263]] video, first version (1996)
|{{IETF RFC|2190|link=no}}, {{IETF RFC|3551|link=no}}
|RFC 3551, RFC 2190
|-
 
Line 342 ⟶ 388:
|
|reserved because RTCP packet types 200&ndash;204 would otherwise be indistinguishable from RTP payload types 72&ndash;76 with the marker bit set
|RFC{{IETF RFC|3550|link=no}}, RFC{{IETF RFC|3551|link=no}}
|-
 
Line 353 ⟶ 399:
|
|note that RTCP packet type 207 (XR, Extended Reports) would be indistinguishable from RTP payload types 79 with the marker bit set
|RFC{{IETF RFC|3551|link=no}}, RFC{{IETF RFC|3611|link=no}}
|-
 
Line 364 ⟶ 410:
|
|[[H.263]] video, second version (1998)
|{{IETF RFC|2190|link=no}}, {{IETF RFC|3551|link=no}}, {{IETF RFC|4629|link=no}}
|RFC 3551, RFC 4629, RFC 2190
|-
 
Line 375 ⟶ 421:
|
|[[H.263]] video, third version (2000)
|RFC{{IETF RFC|4629|link=no}}
|-
 
Line 386 ⟶ 432:
|
|[[H.264]] video (MPEG-4 Part 10)
|{{IETF RFC |6184, previously RFC 3984|link=no}}
|-
 
Line 397 ⟶ 443:
|
|[[H.264]] video
|RFC{{IETF RFC|6190|link=no}}
|-
 
Line 408 ⟶ 454:
|
|[[H.265]] video (HEVC)
|RFC{{IETF RFC|7798|link=no}}
|-
 
Line 430 ⟶ 476:
|20, 30
|[[iLBC|Internet low Bitrate Codec]] 13.33 or 15.2&nbsp;kbit/s
|RFC{{IETF RFC|3952|link=no}}
|-
 
Line 441 ⟶ 487:
|
|ITU-T [[G.711|G.711.1]] A-law
|RFC{{IETF RFC|5391|link=no}}
|-
 
Line 452 ⟶ 498:
|
|ITU-T [[G.711|G.711.1]] μ-law
|RFC{{IETF RFC|5391|link=no}}
|-
 
Line 474 ⟶ 520:
|
|ITU-T [[G.719]]
|RFC{{IETF RFC|5404|link=no}}
|-
 
Line 485 ⟶ 531:
|
|ITU-T [[G.722.1]] and G.722.1 Annex C
|RFC{{IETF RFC|5577|link=no}}
|-
 
Line 496 ⟶ 542:
|20
|ITU-T [[G.726]] audio 16&nbsp;kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 507 ⟶ 553:
|20
|ITU-T G.726 audio 24&nbsp;kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 518 ⟶ 564:
|20
|ITU-T G.726 audio 32&nbsp;kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 529 ⟶ 575:
|20
|ITU-T G.726 audio 40&nbsp;kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 540 ⟶ 586:
|20
|ITU-T [[G.729]] Annex D
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 551 ⟶ 597:
|20
|ITU-T [[G.729]] Annex E
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 562 ⟶ 608:
|
|ITU-T [[G.729.1]]
|RFC{{IETF RFC|4749|link=no}}
|-
 
Line 573 ⟶ 619:
|20
|ITU-T [[GSM-EFR]] (GSM 06.60)
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 584 ⟶ 630:
|
|ITU-T [[Half Rate|GSM-HR]] (GSM 06.20)
|RFC{{IETF RFC|5993|link=no}}
|-
 
Line 595 ⟶ 641:
|
|[[Adaptive Multi-Rate]] audio
|RFC{{IETF RFC|4867|link=no}}
|-
 
Line 606 ⟶ 652:
|
|[[AMR-WB|Adaptive Multi-Rate Wideband]] audio (ITU-T G.722.2)
|RFC{{IETF RFC|4867|link=no}}
|-
 
Line 617 ⟶ 663:
|
|[[AMR-WB+|Extended Adaptive Multi Rate – WideBand]] audio
|RFC{{IETF RFC|4352|link=no}}
|-
 
Line 628 ⟶ 674:
|
|[[Vorbis]] audio
|RFC{{IETF RFC|5215|link=no}}
|-
 
Line 639 ⟶ 685:
|20
|[[Opus (audio format)|Opus]] audio
|RFC{{IETF RFC|7587|link=no}}
|-
 
Line 650 ⟶ 696:
|
|[[Speex]] audio
|RFC{{IETF RFC|5574|link=no}}
|-
 
Line 661 ⟶ 707:
|
|Loss-Tolerant [[MP3]] audio
|{{IETF RFC |5219 (previously RFC 3119)|link=no}}
|-
 
Line 672 ⟶ 718:
|
|[[MPEG-4 Audio]] (includes [[Advanced_Audio_Coding|AAC]])
|{{IETF RFC |6416 (previously RFC 3016)|link=no}}
|-
 
Line 683 ⟶ 729:
|
|[[MPEG-4 Visual]]
|{{IETF RFC |6416 (previously RFC 3016)|link=no}}
|-
 
Line 694 ⟶ 740:
|
|[[MPEG-4]] Elementary Streams
|RFC{{IETF RFC|3640|link=no}}
|-
 
Line 705 ⟶ 751:
|
|[[VP8]] video
|RFC{{IETF RFC|7741|link=no}}
|-
 
Line 716 ⟶ 762:
|
|[[VP9]] video
|{{IETF RFC|9628|link=no}}
|[https://tools.ietf.org/html/draft-ietf-payload-vp9 draft-ietf-payload-vp9]
|-
 
Line 738 ⟶ 784:
|20
|[[Linear PCM]] 8-bit audio with 128 offset
|{{IETF RFC |3551 Section|link=no}}{{Rp|§ 4.5.10 and }}{{Rp|Table 5}}
|-
 
Line 749 ⟶ 795:
|20 (by analogy with L16)
|IEC 61119 12-bit nonlinear audio
|{{IETF RFC |3190 Section |link=no}}{{Rp|§3}}
|-
 
Line 760 ⟶ 806:
|20
|[[Linear PCM]] 16-bit audio
|{{IETF RFC |3551 Section|link=no}},{{Rp|§ 4.5.11,}} {{IETF RFC |2586|link=no}}
|-
 
Line 771 ⟶ 817:
|20 (by analogy with L16)
|[[Linear PCM]] 20-bit audio
|{{IETF RFC |3190 Section|link=no}}{{Rp|§ 4}}
|-
 
Line 782 ⟶ 828:
|20 (by analogy with L16)
|[[Linear PCM]] 24-bit audio
|{{IETF RFC |3190 Section|link=no}}{{Rp|§ 4}}
|-
 
Line 793 ⟶ 839:
|
|Uncompressed Video
|RFC{{IETF RFC|4175|link=no}}
|-
 
Line 804 ⟶ 850:
|
|[[Dolby AC-3]] audio
|RFC{{IETF RFC|4184|link=no}}
|-
 
Line 815 ⟶ 861:
|
|[[Dolby Digital Plus|Enhanced AC-3]] audio
|RFC{{IETF RFC|4598|link=no}}
|-
 
Line 826 ⟶ 872:
|
|[[Text over IP]]
|RFC{{IETF RFC|4103|link=no}}
|-
|dynamic
 
|EVRC<br>EVRC0<br>EVRC1
|audio
Line 836 ⟶ 883:
|
|[[Enhanced Variable Rate Codec|EVRC]] audio
|RFC{{IETF RFC|4788|link=no}}
|-
|dynamic
Line 846 ⟶ 893:
|
|[[Enhanced Variable Rate Codec B|EVRC-B]] audio
|RFC{{IETF RFC|4788|link=no}}
|-
 
Line 857 ⟶ 904:
|
|[[Enhanced Variable Rate Codec B|EVRC-WB]] audio
|RFC{{IETF RFC|5188|link=no}}
|-
 
Line 868 ⟶ 915:
|
|[[JPEG 2000]] video
|RFC{{IETF RFC|5371|link=no}}
|-
 
Line 879 ⟶ 926:
|
|[[UEMCLIP]] audio
|RFC{{IETF RFC|5686|link=no}}
|-
 
Line 890 ⟶ 937:
|
|[[Adaptive Transform Acoustic Coding|ATRAC]]3 audio
|RFC{{IETF RFC|5584|link=no}}
|-
 
Line 901 ⟶ 948:
|
|[[Adaptive Transform Acoustic Coding|ATRAC]]3+ audio
|RFC{{IETF RFC|5584|link=no}}
|-
 
Line 912 ⟶ 959:
|
|[[Adaptive Transform Acoustic Coding|ATRAC]] Advanced Lossless audio
|RFC{{IETF RFC|5584|link=no}}
|-
 
Line 923 ⟶ 970:
|
|[[DV (video format)|DV]] video
|{{IETF RFC |6469 (previously RFC 3189)|link=no}}
|-
 
Line 934 ⟶ 981:
|
|[[ITU-R BT.656]] video
|RFC{{IETF RFC|3555|link=no}}
|-
 
Line 945 ⟶ 992:
|
|Bundled MPEG-2 video
|RFC{{IETF RFC|2343|link=no}}
|-
 
Line 956 ⟶ 1,003:
|
|[[SMPTE 292M]] video
|RFC{{IETF RFC|3497|link=no}}
|-
 
Line 967 ⟶ 1,014:
|
|Redundant Audio Data
|RFC{{IETF RFC|2198|link=no}}
|-
 
Line 978 ⟶ 1,025:
|
|Variable-rate DVI4 audio
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 989 ⟶ 1,036:
|
|MPEG-1 Systems Streams video
|RFC{{IETF RFC|2250|link=no}}
|-
 
Line 1,000 ⟶ 1,047:
|
|MPEG-2 Program Streams video
|RFC{{IETF RFC|2250|link=no}}
|-
 
Line 1,011 ⟶ 1,058:
|
|tone
|RFC{{IETF RFC|4733|link=no}}
|-
 
Line 1,022 ⟶ 1,069:
|
|[[Dual-tone multi-frequency signaling|DTMF]] tone
|RFC{{IETF RFC|4733|link=no}}
|-
 
Line 1,033 ⟶ 1,080:
|4<ref group=note>For aptX, the packetization interval must be rounded down to the nearest packet interval that can contain an integer number of samples. So at sampling rates of 11025, 22050, or 44100, a packetization rate of "4" is rounded down to 3.99.</ref>
|[[aptX]] audio
|RFC{{IETF RFC|7310|link=no}}
|-
 
Line 1,044 ⟶ 1,091:
|
|[[JPEG XS]] video
|RFC{{IETF RFC|9134|link=no}}
|-
 
Line 1,055 ⟶ 1,102:
|
|[[Secure Communications Interoperability Protocol|SCIP]]
|RFC{{IETF RFC|9607|link=no}}
|}
 
{{reflist|group=note}}
 
==Text messaging payload ==
* {{IETF RFC|4103}}, ''RTP Payload Format for Text Conversation''
 
==MIDI payload ==
* {{IETF RFC|6295}}, ''[[RTP-MIDI|RTP Payload Format for MIDI]]''
* {{IETF RFC|4696}}, ''An Implementation Guide for RTP MIDI''
 
==See also==