G729: Difference between revisions

From KlavoWiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
G729 and G723 Codec Install<br>
= Introduction =
Before downloading the codec module you need to verify what your processor type is, as to get a compatible compiled codec.
There are two methods describe here.  The second is to download the binary files from hosting.lv which I recommend for asterisk version 12.x.x and below.  At time of writing there are no binary files for asterisk 13.x.x so building and installing some components are required.
 
= Processor Type =
Before downloading or building the codec module you need to verify what your processor type is to ensure compatibility.


From the Linux command type in:
From the Linux command type in:
Line 6: Line 9:
cat /proc/cpuinfo
cat /proc/cpuinfo
</pre>
</pre>
Look specifically at the model name and the flags.  The following is an example of the process that I am using.
Look specifically at the model name and the flags.  The following is an example of the process that I am using.
<pre>
<pre>
Line 38: Line 42:
From this information we can see that it is a Pentium D processor.  These are the 2 bits of required information we need.  If you don’t see sse in your flags settings then the file you need must contain the words no-sse
From this information we can see that it is a Pentium D processor.  These are the 2 bits of required information we need.  If you don’t see sse in your flags settings then the file you need must contain the words no-sse


= Building =
== bcg729 ==
<pre>
cd /usr/src
wget http://download-mirror.savannah.gnu.org/releases/linphone/plugins/sources/bcg729-1.0.0.tar.gz
tar xvf bcg729-1.0.0.tar.gz
rm -f bcg729-1.0.0.tar.gz
cd bcg729-1.0.0
./configure
make
make install
</pre>
== g729 ==
<pre>
cd /usr/src
wget https://bitbucket.org/arkadi/asterisk-g72x/get/ce0c9d556304.zip
unzip ce0c9d556304.zip
rm -f ce0c9d556304.zip
cd arkadi-asterisk-g72x-ce0c9d556304
./autogen.sh
./configure --enable-pentiumm --with-bcg729 --with-asterisk130
</pre>
= Binaries =
Now go to http://asterisk.hosting.lv/ and select the appropriate Asterisk version.
Now go to http://asterisk.hosting.lv/ and select the appropriate Asterisk version.



Revision as of 04:08, 18 November 2014

Introduction

There are two methods describe here. The second is to download the binary files from hosting.lv which I recommend for asterisk version 12.x.x and below. At time of writing there are no binary files for asterisk 13.x.x so building and installing some components are required.

Processor Type

Before downloading or building the codec module you need to verify what your processor type is to ensure compatibility.

From the Linux command type in:

cat /proc/cpuinfo

Look specifically at the model name and the flags. The following is an example of the process that I am using.

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 15
model           : 6
model name      : Intel(R) Pentium(R) D CPU 3.00GHz
stepping        : 5
microcode       : 0x7
cpu MHz         : 3000.249
cache size      : 2048 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 6
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc pebs bts nopl pni dtes64 monitor ds_cpl est cid cx16 xtpr pdcm lahf_lm
bogomips        : 6000.49
clflush size    : 64
cache_alignment : 128
address sizes   : 36 bits physical, 48 bits virtual
power management:

From this information we can see that it is a Pentium D processor. These are the 2 bits of required information we need. If you don’t see sse in your flags settings then the file you need must contain the words no-sse


Building

bcg729

cd /usr/src
wget http://download-mirror.savannah.gnu.org/releases/linphone/plugins/sources/bcg729-1.0.0.tar.gz
tar xvf bcg729-1.0.0.tar.gz
rm -f bcg729-1.0.0.tar.gz
cd bcg729-1.0.0

./configure
make
make install

g729

cd /usr/src
wget https://bitbucket.org/arkadi/asterisk-g72x/get/ce0c9d556304.zip
unzip ce0c9d556304.zip
rm -f ce0c9d556304.zip
cd arkadi-asterisk-g72x-ce0c9d556304
./autogen.sh
./configure --enable-pentiumm --with-bcg729 --with-asterisk130

Binaries

Now go to http://asterisk.hosting.lv/ and select the appropriate Asterisk version.

Change folders to /usr/lib/asterisk/modules

cd /usr/lib/asterisk/modules

Download the required file(s)

For the G729 codec with a Pentium 4 sse chip:

wget http://asterisk.hosting.lv/bin/codec_g729-ast120-gcc4-glibc-x86_64-pentium4.so

For the G723 codec with a Pentium 4 sse chip:

wget http://asterisk.hosting.lv/bin/codec_g723-ast120-gcc4-glibc-x86_64-pentium4.so

Restart asterisk and you are done.

If Asterisk does not start then you will need to use a different version of the codec files.