Skip to main content

Dynamic Payloads

About

FreeSWITCH supports dynamic payloads.

Payload Information

RTP payloads are a 7 bit number 0-128 divided in 2.

  • 0-95 are reserved by the IANA.
  • 96-128 are considered dynamic.

When matching codecs between 0 and 95:

  • The payload MUST be matched by the _number_

When matching codecs between 96 and 128 (dynamic range):

  1. The payload MUST be matched by the _name_
  2. Even when your leg and the other leg have different numbers for the same name, you MUST use their number to SEND and your own to RECV you CANNOT send your number someone who as advertised the same codec on another number

From RFC 3551 the following are the dynamic payload types:

Registry:
PT encoding name audio/video (A/V) clock rate (Hz) channels (audio) Reference
-------- -------------- ----------------- --------------- ---------------- ---------
0 PCMU A 8000 1 [RFC3551]
1 Reserved
2 Reserved
3 GSM A 8000 1 [RFC3551]
4 G723 A 8000 1 [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 [DiPol]
17 DVI4 A 22050 1 [DiPol]
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 [Zhu]
35-71 Unassigned ?
72-76 Reserved for RTCP conflict avoidance [RFC3551]
77-95 Unassigned ?
96-127 dynamic ? [RFC3551]