Кодек G729 является популярным кодеком на низкоскоростных каналах связи, но в состав Asterisk по-умолчанию не входит в связи с лицензионными ограничениями.
В следствии чего, поставим его самостоятельно.
Введем:
cli> core show translation recalc 10
показывает время (ед. измерения в заголовке таблицы) транскодинга из одного формата в другой. В то же время позволяет понять, какие кодеки установлены и загружены в систему.
cli>!cd /usr/lib/asterisk/modules/
«!» в CLI означает, что команда выполняется в консоли LINUX
На сайте https://asterisk.hosting.lv/ выбираем версию нашего астериск, платформу (i386 или x86_64) и тип использованного компилятора (IPP или GCC4).
Для ОС Сentos 32 бита на платформе intel, скачиваем:
cli>!wget https://asterisk.hosting.lv/bin/codec_g729-ast18-gcc4-glibc-pentium4.so
Помещаем скачанный файл в директорию модулей: /usr/lib/asterisk/modules
Затем загружаем модуль в астериск, (если мы обновляем кодек, то старую версию модуля предварительно удаляем):
cli>module load codec_g729-ast18-gcc4-glibc-pentium4.so
Проверяем:
cli> core show translation recalc 10
Если Вы допустите ошибку в выборе кодека, астериск откажется работать.
Запускаем астериск и смотрим на каком этапе он вываливается:
#asterisk -vvvvvvvvvvvvvvvvvvvc
Если не повезло, удаляем модуль и перезапускаем астериск.
Однако, можно поступить и следующим образом:
в файле modules.conf добавляем строчку
noload => codec_g729-ast18-gcc4-glibc-pentium4.so,
чтобы при старте этот модуль не загружался автоматически.
После нормальной загрузки кодека, выполните команду
core show translations
recalc 10, чтобы убедиться в корректности установки кодека.
Для кодека G.723.1 необходимо указать send rate в конфигурационном файле codecs.conf:
{g723]
;6.3 Kbps stream, default
sendrate=63
;5.3 Kbps
;sendrate-53
В конфигурационных файлах
sip.conf
и
iax.conf
не забудьте прописать :
disallow=all
allow=g729