RTP payload formats: Difference between revisions

Content deleted Content added
 
(24 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|31903550|ref=yes}}
* {{Sum RFC|61843551|ref=yes}}
* {{Sum RFC|36403611|ref=yes}}
* {{Sum RFC|4856|ref=yes}}
 
* {{Sum RFC|3190|ref=yes}}
==Text messaging payload types==
* {{Sum RFC|6184|ref=yes}}
Payload formats and types for text messaging are defined in the following specifications:
* {{Sum RFC|3640|ref=yes}}
* {{Sum RFC|64164103|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|41032029|ref=yes|notes=yes}}
* {{Sum RFC|2190|ref=yes}}
* {{Sum RFC|2198|ref=yes}}
* {{Sum RFC|2250|ref=yes}}
* {{Sum RFC|77982343|ref=yes}}
* {{Sum RFC|2435|ref=yes}}
* {{Sum RFC|45872586|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}}
* {{Sum RFC|6416|ref=yes}}
* {{Sum RFC|6469|ref=yes}}
* {{Sum RFC|7310|ref=yes}}
* {{Sum RFC|7587|ref=yes}}
* {{Sum RFC|7741|ref=yes}}
* {{Sum RFC|7798|ref=yes}}
* {{Sum RFC|9134|ref=yes}}
* {{Sum RFC|9607|ref=yes}}
* {{Sum RFC|9628|ref=yes}}
 
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
|{{SumIETF RFC|3551|titlelink=no|ref=yes}}
|-
 
Line 55 ⟶ 102:
|
|reserved, previously [[FS-1016]] [[CELP]] audio 4.8 kbit/s
|{{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 66 ⟶ 113:
|
|reserved, previously ITU-T [[G.721]] [[ADPCM]] audio 32 kbit/s or ITU-T [[G.726]] audio 32 kbit/s
|{{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 77 ⟶ 124:
|20
|European [[GSM-FR|GSM Full Rate]] audio 13 kbit/s (GSM 06.10)
|{{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 88 ⟶ 135:
|30
|ITU-T [[G.723.1]] audio
|{{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 99 ⟶ 146:
|20
|[[Interactive Multimedia Association|IMA]] [[ADPCM]] audio 32 kbit/s
|{{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 110 ⟶ 157:
|20
|[[Interactive Multimedia Association|IMA]] [[ADPCM]] audio 64 kbit/s
|{{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 121 ⟶ 168:
|20
|Experimental [[Linear predictive coding|Linear Predictive Coding]] audio 5.6 kbit/s
|{{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 132 ⟶ 179:
|20
|ITU-T G.711 PCM [[A-Law]] audio 64 kbit/s
|{{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 143 ⟶ 190:
|20
|ITU-T [[G.722]] audio 64 kbit/s
|{{SumIETF RFC|3551|titlelink=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
|{{SumIETF RFC|3551|titlelink=no}}{{Rp|p=27}}
|-
 
Line 165 ⟶ 212:
|20
|[[Linear PCM]] 16-bit audio 705.6 kbit/s, uncompressed
|{{SumIETF RFC|3551|titlelink=no}}{{Rp|p=27}}
|-
 
Line 176 ⟶ 223:
|20
|[[QCELP|Qualcomm Code Excited Linear Prediction]]
|{{SumIETF RFC|2658|titlelink=no|ref=yes}}, {{SumIETF RFC|3551|titlelink=no}}{{Rp|p=28}}
|-
 
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.
|{{SumIETF RFC|3389|titlelink=no|ref=yes}}
|-
 
Line 198 ⟶ 245:
|
|[[MPEG-1]] or [[MPEG-2]] audio only
|{{SumIETF RFC|35512250|titlelink=no}}, {{SumIETF RFC|22503551|titlelink=no|ref=yes}}
|-
 
Line 209 ⟶ 256:
|20
|ITU-T [[G.728]] audio 16 kbit/s
|{{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 220 ⟶ 267:
|20
|[[Interactive Multimedia Association|IMA]] [[ADPCM]] audio 44.1 kbit/s
|{{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 231 ⟶ 278:
|20
|IMA ADPCM audio 88.2 kbit/s
|{{SumIETF RFC|3551|titlelink=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
|{{SumIETF RFC|3551|titlelink=no}},{{Rp|p=20}}, {{SumIETF RFC|35554856|titlelink=no|ref=yes}}{{Rp|p=1512}}
|-
 
Line 253 ⟶ 300:
|
|reserved, previously [[comfort noise]]
|{{SumIETF RFC|3551|titlelink=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>
|{{SumIETF RFC|2029|titlelink=no|ref=yes}}
|-
 
Line 275 ⟶ 322:
|
|[[JPEG]] video
|{{SumIETF RFC|2435|titlelink=no|ref=yes}}
|-
 
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>
|{{SumIETF RFC|3551|titlelink=no}}{{Rp|p=32}}
|-
 
Line 297 ⟶ 344:
|
|ITU-T [[H.261]] video
|{{SumIETF RFC|4587|titlelink=no|ref=yes}}
|-
 
Line 308 ⟶ 355:
|
|MPEG-1 and MPEG-2 video
|{{SumIETF RFC|2250|titlelink=no}}
|-
 
Line 319 ⟶ 366:
|
|MPEG-2 [[MPEG transport stream|transport stream]]
|{{SumIETF RFC|2250|titlelink=no}}
|-
 
Line 330 ⟶ 377:
|
|[[H.263]] video, first version (1996)
|{{SumIETF RFC|35512190|titlelink=no}}, {{SumIETF RFC|21903551|titlelink=no|ref=yes}}
|-
 
Line 341 ⟶ 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
|{{SumIETF RFC|3550|titlelink=no|ref=yes}}, {{SumIETF RFC|3551|titlelink=no}}
|-
 
Line 352 ⟶ 399:
|
|note that RTCP packet type 207 (XR, Extended Reports) would be indistinguishable from RTP payload types 79 with the marker bit set
|{{SumIETF RFC|3551|titlelink=no}}, {{SumIETF RFC|3611|titlelink=no}}
|-
 
Line 363 ⟶ 410:
|
|[[H.263]] video, second version (1998)
|{{SumIETF RFC|35512190|titlelink=no}}, {{SumIETF RFC|46293551|titlelink=no|ref=yes}}, {{SumIETF RFC|21904629|titlelink=no}}
|-
 
Line 374 ⟶ 421:
|
|[[H.263]] video, third version (2000)
|{{SumIETF RFC|4629|titlelink=no}}
|-
 
Line 385 ⟶ 432:
|
|[[H.264]] video (MPEG-4 Part 10)
|{{IETF RFC |6184, previously RFC 3984|link=no}}
|-
 
Line 396 ⟶ 443:
|
|[[H.264]] video
|RFC{{IETF RFC|6190|link=no}}
|-
 
Line 407 ⟶ 454:
|
|[[H.265]] video (HEVC)
|RFC{{IETF RFC|7798|link=no}}
|-
 
Line 429 ⟶ 476:
|20, 30
|[[iLBC|Internet low Bitrate Codec]] 13.33 or 15.2&nbsp;kbit/s
|RFC{{IETF RFC|3952|link=no}}
|-
 
Line 440 ⟶ 487:
|
|ITU-T [[G.711|G.711.1]] A-law
|RFC{{IETF RFC|5391|link=no}}
|-
 
Line 451 ⟶ 498:
|
|ITU-T [[G.711|G.711.1]] μ-law
|RFC{{IETF RFC|5391|link=no}}
|-
 
Line 473 ⟶ 520:
|
|ITU-T [[G.719]]
|RFC{{IETF RFC|5404|link=no}}
|-
 
Line 484 ⟶ 531:
|
|ITU-T [[G.722.1]] and G.722.1 Annex C
|RFC{{IETF RFC|5577|link=no}}
|-
 
Line 495 ⟶ 542:
|20
|ITU-T [[G.726]] audio 16&nbsp;kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 506 ⟶ 553:
|20
|ITU-T G.726 audio 24&nbsp;kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 517 ⟶ 564:
|20
|ITU-T G.726 audio 32&nbsp;kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 528 ⟶ 575:
|20
|ITU-T G.726 audio 40&nbsp;kbit/s
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 539 ⟶ 586:
|20
|ITU-T [[G.729]] Annex D
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 550 ⟶ 597:
|20
|ITU-T [[G.729]] Annex E
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 561 ⟶ 608:
|
|ITU-T [[G.729.1]]
|RFC{{IETF RFC|4749|link=no}}
|-
 
Line 572 ⟶ 619:
|20
|ITU-T [[GSM-EFR]] (GSM 06.60)
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 583 ⟶ 630:
|
|ITU-T [[Half Rate|GSM-HR]] (GSM 06.20)
|RFC{{IETF RFC|5993|link=no}}
|-
 
Line 594 ⟶ 641:
|
|[[Adaptive Multi-Rate]] audio
|RFC{{IETF RFC|4867|link=no}}
|-
 
Line 605 ⟶ 652:
|
|[[AMR-WB|Adaptive Multi-Rate Wideband]] audio (ITU-T G.722.2)
|RFC{{IETF RFC|4867|link=no}}
|-
 
Line 616 ⟶ 663:
|
|[[AMR-WB+|Extended Adaptive Multi Rate – WideBand]] audio
|RFC{{IETF RFC|4352|link=no}}
|-
 
Line 627 ⟶ 674:
|
|[[Vorbis]] audio
|RFC{{IETF RFC|5215|link=no}}
|-
 
Line 638 ⟶ 685:
|20
|[[Opus (audio format)|Opus]] audio
|RFC{{IETF RFC|7587|link=no}}
|-
 
Line 649 ⟶ 696:
|
|[[Speex]] audio
|RFC{{IETF RFC|5574|link=no}}
|-
 
Line 660 ⟶ 707:
|
|Loss-Tolerant [[MP3]] audio
|{{IETF RFC |5219 (previously RFC 3119)|link=no}}
|-
 
Line 671 ⟶ 718:
|
|[[MPEG-4 Audio]] (includes [[Advanced_Audio_Coding|AAC]])
|{{IETF RFC |6416 (previously RFC 3016)|link=no}}
|-
 
Line 682 ⟶ 729:
|
|[[MPEG-4 Visual]]
|{{IETF RFC |6416 (previously RFC 3016)|link=no}}
|-
 
Line 693 ⟶ 740:
|
|[[MPEG-4]] Elementary Streams
|RFC{{IETF RFC|3640|link=no}}
|-
 
Line 704 ⟶ 751:
|
|[[VP8]] video
|RFC{{IETF RFC|7741|link=no}}
|-
 
Line 715 ⟶ 762:
|
|[[VP9]] video
|{{IETF RFC|9628|link=no}}
|[https://tools.ietf.org/html/draft-ietf-payload-vp9 draft-ietf-payload-vp9]
|-
 
Line 737 ⟶ 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 748 ⟶ 795:
|20 (by analogy with L16)
|IEC 61119 12-bit nonlinear audio
|{{IETF RFC |3190 Section |link=no}}{{Rp|§3}}
|-
 
Line 759 ⟶ 806:
|20
|[[Linear PCM]] 16-bit audio
|{{IETF RFC |3551 Section|link=no}},{{Rp|§ 4.5.11,}} {{IETF RFC |2586|link=no}}
|-
 
Line 770 ⟶ 817:
|20 (by analogy with L16)
|[[Linear PCM]] 20-bit audio
|{{IETF RFC |3190 Section|link=no}}{{Rp|§ 4}}
|-
 
Line 781 ⟶ 828:
|20 (by analogy with L16)
|[[Linear PCM]] 24-bit audio
|{{IETF RFC |3190 Section|link=no}}{{Rp|§ 4}}
|-
 
Line 792 ⟶ 839:
|
|Uncompressed Video
|RFC{{IETF RFC|4175|link=no}}
|-
 
Line 803 ⟶ 850:
|
|[[Dolby AC-3]] audio
|RFC{{IETF RFC|4184|link=no}}
|-
 
Line 814 ⟶ 861:
|
|[[Dolby Digital Plus|Enhanced AC-3]] audio
|RFC{{IETF RFC|4598|link=no}}
|-
 
Line 825 ⟶ 872:
|
|[[Text over IP]]
|RFC{{IETF RFC|4103|link=no}}
|-
|dynamic
 
|EVRC<br>EVRC0<br>EVRC1
|audio
Line 835 ⟶ 883:
|
|[[Enhanced Variable Rate Codec|EVRC]] audio
|RFC{{IETF RFC|4788|link=no}}
|-
|dynamic
Line 845 ⟶ 893:
|
|[[Enhanced Variable Rate Codec B|EVRC-B]] audio
|RFC{{IETF RFC|4788|link=no}}
|-
 
Line 856 ⟶ 904:
|
|[[Enhanced Variable Rate Codec B|EVRC-WB]] audio
|RFC{{IETF RFC|5188|link=no}}
|-
 
Line 867 ⟶ 915:
|
|[[JPEG 2000]] video
|RFC{{IETF RFC|5371|link=no}}
|-
 
Line 878 ⟶ 926:
|
|[[UEMCLIP]] audio
|RFC{{IETF RFC|5686|link=no}}
|-
 
Line 889 ⟶ 937:
|
|[[Adaptive Transform Acoustic Coding|ATRAC]]3 audio
|RFC{{IETF RFC|5584|link=no}}
|-
 
Line 900 ⟶ 948:
|
|[[Adaptive Transform Acoustic Coding|ATRAC]]3+ audio
|RFC{{IETF RFC|5584|link=no}}
|-
 
Line 911 ⟶ 959:
|
|[[Adaptive Transform Acoustic Coding|ATRAC]] Advanced Lossless audio
|RFC{{IETF RFC|5584|link=no}}
|-
 
Line 922 ⟶ 970:
|
|[[DV (video format)|DV]] video
|{{IETF RFC |6469 (previously RFC 3189)|link=no}}
|-
 
Line 933 ⟶ 981:
|
|[[ITU-R BT.656]] video
|RFC{{IETF RFC|3555|link=no}}
|-
 
Line 944 ⟶ 992:
|
|Bundled MPEG-2 video
|RFC{{IETF RFC|2343|link=no}}
|-
 
Line 955 ⟶ 1,003:
|
|[[SMPTE 292M]] video
|RFC{{IETF RFC|3497|link=no}}
|-
 
Line 966 ⟶ 1,014:
|
|Redundant Audio Data
|RFC{{IETF RFC|2198|link=no}}
|-
 
Line 977 ⟶ 1,025:
|
|Variable-rate DVI4 audio
|RFC{{IETF RFC|3551|link=no}}
|-
 
Line 988 ⟶ 1,036:
|
|MPEG-1 Systems Streams video
|RFC{{IETF RFC|2250|link=no}}
|-
 
Line 999 ⟶ 1,047:
|
|MPEG-2 Program Streams video
|RFC{{IETF RFC|2250|link=no}}
|-
 
Line 1,010 ⟶ 1,058:
|
|tone
|RFC{{IETF RFC|4733|link=no}}
|-
 
Line 1,021 ⟶ 1,069:
|
|[[Dual-tone multi-frequency signaling|DTMF]] tone
|RFC{{IETF RFC|4733|link=no}}
|-
 
Line 1,032 ⟶ 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,043 ⟶ 1,091:
|
|[[JPEG XS]] video
|RFC{{IETF RFC|9134|link=no}}
|-
 
Line 1,054 ⟶ 1,102:
|
|[[Secure Communications Interoperability Protocol|SCIP]]
|RFC{{IETF RFC|9607|link=no}}
|}
 
{{reflist|group=note}}
 
==Text messaging payload ==
* {{Sum RFC|4103|ref=yes|notes=yes}}
* {{Sum RFC|9071|ref=yes}}
 
==MIDI payload ==
*{{Sum RFC|6295|ref=yes}}
*{{Sum RFC|4696|ref=yes}}
 
==See also==