This small how-to describes the installation G.729 and G.723.1 codecs on Asterisk.
Getting the codec modules
Precompiled codec modules can be found here: http://asterisk.hosting.lv/
Choose the one that matches your asterisk version and system architecture.
To find out your system info open a console and type:
uname -a
you should get something similar to this:
Linux chimera 2.6.32-31-generic #61-Ubuntu SMP Fri Apr 8 18:24:35 UTC 2011 i686 GNU/Linux
to get CPU specific info type:
cat /proc/cpuinfo
and you get:
processor : 0 vendor_id : GenuineIntel cpu family : 15 model : 2 model name : Intel(R) Pentium(R) 4 CPU 2.80GHz stepping : 9 cpu MHz : 2800.530 cache size : 512 KB physical id : 0 siblings : 1 core id : 0 cpu cores : 1 apicid : 0 initial apicid : 0 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe up pebs bts cid xtpr bogomips : 5601.06 clflush size : 64 cache_alignment : 128 address sizes : 36 bits physical, 32 bits virtual power management:
Installing the modules
Go to /usr/lib/asterisk/modules folder
cd /usr/lib/asterisk/modules
download the codec modules that fits your system, for example:
wget http://asterisk.hosting.lv/bin/codec_g723-ast18-gcc4-glibc-pentium4.so wget http://asterisk.hosting.lv/bin/codec_g729-ast18-gcc4-glibc-pentium4.so
restart Asterick using
/etc/init.d/asterisk restart
or
service asterisk restart
Connect to asterick console and check that codecs are available
asterisk -r
tehserver*CLI> core show translation g723 gsm ulaw alaw g726aal2 adpcm slin lpc10 g729 speex ilbc g726 g722 siren7 siren14 slin16 g719 speex16 testlaw g723 - 2 2 2 4001 2 1 4001 4001 8001 16002 4002 2 - - 2 - 8003 2 gsm 12002 - 2 2 4001 2 1 4001 4001 8001 16002 4002 2 - - 2 - 8003 2 ulaw 12002 2 - 1 4001 2 1 4001 4001 8001 16002 4002 2 - - 2 - 8003 2 alaw 12002 2 1 - 4001 2 1 4001 4001 8001 16002 4002 2 - - 2 - 8003 2 g726aal2 12002 2 2 2 - 2 1 4001 4001 8001 16002 4002 2 - - 2 - 8003 2 adpcm 12002 2 2 2 4001 - 1 4001 4001 8001 16002 4002 2 - - 2 - 8003 2 slin 12001 1 1 1 4000 1 - 4000 4000 8000 16001 4001 1 - - 1 - 8002 1 lpc10 12002 2 2 2 4001 2 1 - 4001 8001 16002 4002 2 - - 2 - 8003 2 g729 12002 2 2 2 4001 2 1 4001 - 8001 16002 4002 2 - - 2 - 8003 2 speex 12002 2 2 2 4001 2 1 4001 4001 - 16002 4002 2 - - 2 - 8003 2 ilbc 16001 4001 4001 4001 8000 4001 4000 8000 8000 12000 - 8001 4001 - - 4001 - 12002 4001 g726 12002 2 2 2 4001 2 1 4001 4001 8001 16002 - 2 - - 2 - 8003 2 g722 12002 2 2 2 4001 2 1 4001 4001 8001 16002 4002 - - - 1 - 8002 2 siren7 - - - - - - - - - - - - - - - - - - - siren14 - - - - - - - - - - - - - - - - - - - slin16 12003 3 3 3 4002 3 2 4002 4002 8002 16003 4003 1 - - - - 8001 3 g719 - - - - - - - - - - - - - - - - - - - speex16 12004 4 4 4 4003 4 3 4003 4003 8003 16004 4004 2 - - 1 - - 4 testlaw 12002 2 2 2 4001 2 1 4001 4001 8001 16002 4002 2 - - 2 - 8003 -
Here you can see the translation times from one codec to another. Source is Rows and destination is Columns.
Any number in G729 and G723 row/column indicates that the codec is enabled.
Add new comment