En esta oportunidad vamos a ver cómo instalar el códec G729 en nuestra central telefónica basada en Asterisk. Esta explicación nos será útil para cualquier distribución basada en Asterisk, ya sea Issabel, la extinta Elastix o FreePBX.
Debo decir que el códec G729 es de pago, por lo tanto instalarlo en nuestra central no implica que podamos disponer de él; en un futuro artículo explicaré cómo realizar la activación de dicho códec.
Para la instalación del códec debemos ingresar por SSH. En lo personal utilizo PuTTY; si no lo tienes en tu equipo, puedes descargarlo desde putty.org.
Ya con PuTTY instalado, lo ejecutamos e ingresamos a nuestro servidor con el usuario root.
1. Verificar los códecs instalados
asterisk -rx "core show translation"

Como podemos ver, la línea del códec G729 no tiene información.
2. Comprobar la versión de Asterisk
asterisk -rx "core show version"
Asterisk 11.22.0 built by root @ tukeke.com on a x86_64 running Linux on 2016-05-04 21:57:49 UTC
3. Comprobar el hardware del servidor
Ejecutaremos el siguiente comando para verificar el tipo de procesador de nuestro servidor:
cat /proc/cpuinfo

Estos dos datos son importantes para nuestra instalación:
- Versión de Asterisk: 11.13.0
- Procesador: Intel Core 2 Duo
4. Descargar e instalar el códec
Debemos ir al siguiente enlace para buscar la versión correcta de nuestro códec: asterisk.hosting.lv

Desplegamos la versión de nuestro Asterisk y buscamos la que corresponde con nuestro servidor:
codec_g729-ast110-gcc4-glibc-x86_64-core2.so
Ya tenemos toda la información necesaria. Desde la consola ejecutaremos los siguientes comandos:
cd /usr/src
service asterisk restart
wget asterisk.hosting.lv/bin/codec_g729-ast110-gcc4-glibc-x86_64-core2.so
mv codec_g729-ast110-gcc4-glibc-x86_64-core2.so /usr/lib64/asterisk/modules
chmod +x /usr/lib64/asterisk/modules/codec_g729-ast110-gcc4-glibc-x86_64-core2.so
asterisk -rx "module load codec_g729-ast110-gcc4-glibc-x86_64-core2.so"
sleep 2
asterisk -rx "core show codecs"
Nota importante: si tu sistema operativo es de 64 bits la carpeta a usar es
lib64; si es de 32 bits, deberás usarlib.
Después de ejecutar todos los comandos podremos verificar en nuestra interfaz web que tenemos instalados ambos códecs.
5. Configurar sip.conf
Solo falta editar el archivo sip.conf y agregar lo siguiente al final de la sección [general]:
disallow=all
allow=g729
Por último, volvemos a verificar los códecs instalados:
asterisk -rx "core show translation"
Y podremos ver el códec G729 instalado.
