From 8bd82ebc0d6a57cc71f6e5207dfb0925bf506449 Mon Sep 17 00:00:00 2001 From: Jason Parker Date: Wed, 20 Sep 2006 17:39:59 +0000 Subject: Add documentation on rtp packetization. Technically, ooh323 doesn't support it yet, but there is a patch that should be committed very soon. Issue #7989, patch by DEA, slightly modified. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43344 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- doc/rtp-packetization.txt | 73 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 doc/rtp-packetization.txt (limited to 'doc') diff --git a/doc/rtp-packetization.txt b/doc/rtp-packetization.txt new file mode 100644 index 000000000..b38acf8e4 --- /dev/null +++ b/doc/rtp-packetization.txt @@ -0,0 +1,73 @@ +Overview +------- +Asterisk currently supports configurable RTP packetization per codec for +select RTP-based channels. + +Channels +------- +These channel drivers allow RTP packetization on a user/peer/friend +or global level: + chan_sip + chan_skinny + chan_h323 + chan_ooh323 (Asterisk-Addons) + +Configuration +------- +To set a desired packetization interval on a specific codec, +append that inteval to the allow= statement. + +Example: +allow=ulaw:30,alaw,g729:60 + +No packetization is specified in the case of alaw in this example, +so the default of 20ms is used. + +Autoframing +------- +In addition, chan_sip has the ability to negotiate the desired +framing at call establishment. + +In sip.conf if autoframing=yes is set in the global section, then +all calls will try to set the packetization based on the remote +endpoint's preferences. This behaviour depends on the endpoints +ability to present the desired packetization (ptime:) in the SDP. +If the endpoint does not include a ptime attribute, the call will +be established with 20ms packetization. + +Autoframing can be set at the global level or on a user/peer/friend +basis. If it is enabled at the global level, it applies to all +users/peers/friends regardless of their prefered codec packetization. + +Codec framing options +------- +The following table lists the minimum and maximum values that are +valid per codec, as well as the increment value used for each. +Please note that the maximum values here are only recommended +maximums, and should not exceed the RTP MTU. + +Name Min Max Default Increment +g723 30 300 30 30 +gsm 20 60 20 20 +ulaw 10 30 20 10 +alaw 10 30 20 10 +g726 10 50 20 10 +ADPCM 10 30 20 10 +SLIN 10 70 20 10 +lpc10 20 20 20 20 +g729 10 230 20 10 +speex 10 60 20 10 +ilbc 30 30 30 30 +g726_aal2 10 50 20 10 + +Invalid framing options are handled based on the following rules: + 1. If the specified framing is less than the codec's minimum, then + the minimum value is used. + 2. If the specific framing is greater than the codec's maximum, then + the maximum value is used + 3. If the specificed framing does not meet the increment requirement, + the specified framing is rounded down to the closest valid + framing options. + example allow=ulaw:33 will set the codec to 30ms framing + 4. If no framing is specified in the allow= directive, then the + codec default is used. -- cgit v1.2.3