Asterisk®-based PBX Solutions

White Papers

TwinStar: Full PBX Redundancy

Xorcom's dual-server high availability solution for Asterisk-based PBX Best of Show Award for TwinStar
received the "Best of Show" award. Find out why!
Join the Xorcom Partner Channel
 

G.729 for Asterisk IPBX - Guidelines for Implementation

G.729 is one of the most popular voice compression protocols used in IP telephony. This is due to the fact that G.729 reduces the bandwidth usage for a standard telephone call from 80 kilobits per second (kbps) to 24 kpbs, with minimal voice quality degradation.

While in the past the G.729 algorithm ran on dedicated Digital Signal Processors (DSP), today’s processors can easily run the G.729 algorithm effectively while addressing other tasks as well. This document describes how to add the open G.729 codec to Xorcom’s XR1000, XR2000 and XR3000 stand-alone IP-PBX appliances:

 

 

 

 

 

 

 

 

Conversion Times Based on Compression Method

G.729 requires CPU resources. The tables at the end of this document show the conversion time (using different compression methods) that can be achieved by each member of Xorcom’s IP-PBX family.

Methods for Obtaining the G.729 Codec

There are two ways to obtain the G.729 codec for an Asterisk-based IP-PBX:

  1. Buy the licenses from Digium
  2. Install the Open Source version

Both codec versions provide the same performance, but in case of the Open Source version you undertake the responsibility for payment of the license fee. The legal aspects of using the Open Source version of the G.729 codec are discussed in the following article: http://voip-info.org/wiki/view/Asterisk+G.729+Licensing

Installing the Open Source G.729 Codec

To install the Open Source implementation of G.729 codec on the Xorcom XR1000/2000/3000 perform the following actions:

  1. Download the codec binary file from http://asterisk.hosting.lv/bin/codec_g729-ast14-gcc4-glibc-pentium4.so
  2. Copy it to the /usr/lib/asterisk/modules folder.
  3. Restart the Asterisk: /etc/init.d/asterisk restart or amportal restart

Estimating the Number of G.729 Channels Required

If you choose to purchase the G.729 license from Digium you will need to compute the number of G.729 channels required by your configuration. You can estimate the required value by using the following information:

  • a call between two SIP extensions usually requires two G.729 channels, unless the pass-thru mode is used (http://voip-info.org/wiki/view/Asterisk+G.729+pass-thru), in which case it doesn’t require any G.729 channel.
  • a call between a SIP extension and a Zaptel/DAHDI extension/trunk requires one G.729 channel.
  • a call to Voice Mail or another Asterisk service where IVR messages must be played requires one G.729 channel.

Typical Translation Time Between Formats: XR3000

The following table contains the values of typical translation time between formats (in milliseconds) for one second of data source format (rows) to destination format (columns) in the Xorcom XR3000 IP-PBX appliance:

Data Source Format
Destination Format
GSM
µ-law
a-law
g726aal2
ADPCM
SLIN
LPC10
G729 Speex G726
GSM  - 2
 2  2  2  1  3  5  13  2
 µ-law
5
-
 1  2  2  1  3  5  13  2
 a-law 5
1
 -  2  2  1  3  5  13  2
 G726-aal2 5
2
 2  -  2  1  3  5  13  1
 ADPCM 5
2
 2  2  -  1  3  5  13
 2
 SLIN 4
1
 1  1  1  -  2  4  13  1
 LPC10 5
2
 2  2  2  1  -  5  13  2
 G729 5
2
 2  2  2  1  3  -  13  2
 Speex 6
3
 3  3  3  2  4  6  -  3
 G726 5
2
 2  2  2  1  3  5  13  -

 

Typical Translation Time Between Formats: XR2000

The following table contains the values of typical translation time between formats (in milliseconds) for one second of data source format (rows) to destination format (columns) in the Xorcom XR2000 IP-PBX appliance:

Data Source Format
Destination Format
GSM
µ-law
a-law
g726aal2
ADPCM
SLIN
LPC10
G729 Speex G726
GSM  - 3
 3  4  3  2  6  11  25  4
 µ-law
6
-
 1  3  2  1  5  10  24  3
 a-law 6
1
 -  3  2  1  5  10  24  3
 G726-aal2 7
3
 3  -  3  2  6  11  25  1
 ADPCM 6
2
 2  3  -  1  5  10  24  3
 SLIN 5
1
 1  2  1  -  4  9  23  2
 LPC10 8
4
 4  5  4  3  -  12  26  5
 G729 7
3
 3  4  3  2  6  -  25  4
 Speex 8
4
 4  5  4  3  7  12  -  5
 G726 7
3
 3  1  3  2  6  11  25  -

 

Typical Translation Time Between Formats: XR1000

The following table contains the values of typical translation time between formats (in milliseconds) for one second of data source format (rows) to destination format (columns) in the Xorcom XR1000 IP-PBX appliance:

Data Source Format
Destination Format
GSM
µ-law
a-law
g726aal2
ADPCM
SLIN
LPC10
G729 Speex G726
GSM  -  24  24  53  26  23  74  93  279  54
 µ-law
 83  -  1  31  4  1  52  71  275  32
 a-law  83  1  -  31  4  1  52  71  275  32
 G726-aal2  110  29  29  -  31  28  79  98  302  1
 ADPCM  84  3  3  32  -  2  53  72  276  33
 SLIN  82  1  1  30  3  -  51  70  274  31
 LPC10  121  40  40  69  42  39  -  109  313  70
 G729  107  26  26  55  28  25  76  -  299  56
 Speex  132  51  51  80  53  50  101  120  -  81
 G726  111  30  30  1  32  29  80  99  303  -

 

pdf Download this white paper in PDF format (432.12 Kb)


Last Updated ( Wednesday, 11 February 2009 )
 
  • Send to a friend
  •  
    Bookmark and Share
    rs_teleinterface.jpg

    Xorcom has developed a revolutionary concept in telephony interfaces for Asterisk systems which we call Astribank XPP Technology.

    Using USB 2.0 ports to connect to any Asterisk server, Astribank eliminates the requirement for a PCI (E1/T1) card, and even for PCI slots.

    Can You Run 300 Concurrent Calls on an Asterisk Server?

    Find out the answer and more in the results from load tests recently performed on the XR3000, and explained in the "Five Culprits that Kill Asterisk IP-PBX Performance" recorded webinar.

    Related Info - White Papers
    Xorcom has developed a library of white papers to help leverage the benefits of VoIP technology in general, and the Asterisk platform in particular:



    U.S. & Canada Latin America EMEA APAC Africa
    Feedback Form