Сборка и установка дополнительных кодеков для Asterisk (Codec Translators)

by Anton Chernousov aka GITA-DEV


Опубликовано: 01 Авг 2018 (последние правки 2 месяца, 2 недели)


Сборка и установка дополнительных кодеков для Asterisk (Codec Translators)

Небольшая шпаргалка как в FreePBX-core добавить проприетарные кодеки. Часть кодеков вы можете использовать бесплатно, а например для кодека g729a вам придется приобрести лицензию. Лицензии покупаются на количество конкурентных подключений и для кодека g729a лицензия стоит 8 долларов, что не так уж и дорого если у вас не колл-центр.

Если вы пытались собрать Core-версию FreePBX для платформы Centos 7, то вы наверное обратили внимание, что в разделе Codec Translators, есть подраздел External, где на выбор представлен набор кодеков:

  • codec_opus
  • codec_silk
  • codec_siren7
  • codec_siren14
  • codec_g729a

В прошлый раз, я специально не стал акцентировать внимание на дополнительных кодеках, так как стояла задача исключительно установить и продемонстрировать заказчику Core-версию FreePBX запущенную на хостинге стоимостью 1 евро в месяц.

Сейчас, я все же хотел бы вернуться к вопросу сборки этого набора кодеков, раз уж у меня все равно появилось немного свободного времени и первым делом, я бы хотел обратить ваше внимание, на список кодеков который предлагает на выбор стационарный IP-телефон CISCO.

Кодеки G711u и G711a - это не что иное, как codec_alaw и codec_ulaw, кодек G726 так же выбирается автоматически и представлен в списке входящих в поставку дистрибутива Asterisk, как в принципе и codec_g722. Но обратите внимание, что кодек g729a вам придется установить отдельно и к каждому из внешних кодеков имеется собственный README файл с инструкцией по установке.

codec_opus - http://downloads.digium.com/pub/telephony/codec_opus/README

codec_silk - http://downloads.digium.com/pub/telephony/codec_silk/README

codec_siren7 - http://downloads.digium.com/pub/telephony/codec_siren7/README

codec_siren14 - http://downloads.digium.com/pub/telephony/codec_siren14/README

codec_g729a - http://downloads.digium.com/pub/telephony/codec_g729/README

Установка кодека codec_opus в ручном режиме

Ничего сложного нет и мы можем даже скачать бинарные файлы с downloads.digium.com.

# cd /usr/src/
# wget http://downloads.digium.com/pub/telephony/codec_opus/asterisk-14.0/x86-64/codec_opus-14.0_current-x86_64.tar.gz
# tar -xvf ./codec_opus-14.0_current-x86_64.tar.gz
# cp ./codec_opus-14.0_1.3.0-x86_64/codec_opus.so /usr/lib64/asterisk/modules/

После копирования бинарного файла кодека, необходимо открыть web-интерфейс администратора FreePBX и перейти в раздел "Admin -> Asterisk modules", где на вкладке "Manually Loaded Modules" в поле "Add Module" введите имя модуля codec_opus.so и нажмите ADD.

Проверяем, что наш кодек загружен и готов к работе:

pbx*CLI> module show like codec_opus
Module                         Description                              Use Count  Status      Support Level
codec_opus.so                  OPUS Coder/Decoder                       0          Not Running      extended
1 modules loaded

Установка кодека codec_silk для FreePBX

Кодек получаем аналогичным образом, распаковываем, копируем и активируем:

# wget http://downloads.digium.com/pub/telephony/codec_silk/asterisk-14.0/x86-64/codec_silk-14.0_current-x86_64.tar.gz
# tar -xvf ./codec_silk-14.0_current-x86_64.tar.gz
# cp ./codec_silk-14.0_1.0.3-x86_64/codec_silk.so /usr/lib64/asterisk/modules/

Установка кодеков codec_siren7, codec_siren14 и codec_g729

Дальше повторяться я думаю смысла нет и просто приведу набор команд которые используются для загрузки и распаковки кодеков.

# wget http://downloads.digium.com/pub/telephony/codec_siren7/asterisk-14.0/x86-64/codec_siren7-14.0_current-x86_64.tar.gz
# tar -xvf codec_siren7-14.0_current-x86_64.tar.gz
# cp ./codec_siren7-14.0_1.0.7-x86_64/codec_siren7.so /usr/lib64/asterisk/modules/
# wget http://downloads.digium.com/pub/telephony/codec_siren14/asterisk-14.0/x86-64/codec_siren14-14.0_current-x86_64.tar.gz
# tar -xvf codec_siren14-14.0_current-x86_64.tar.gz
# cp ./codec_siren14-14.0_1.0.7-x86_64/codec_siren14.so /usr/lib64/asterisk/modules/
# wget http://downloads.digium.com/pub/telephony/codec_g729/asterisk-14.0/x86-64/codec_g729a-14.0_current-x86_64.tar.gz
# tar -xvf ./codec_g729a-14.0_current-x86_64.tar.gz
# cp ./codec_g729a-14.0_3.1.9-x86_64/codec_g729a.so /usr/lib64/asterisk/modules/



Обратите внимание на статьи:


Скрипт сборки VOIP клиента Linphone из исходных кодов (для Ubuntu Linux)

Скрипт сборки VOIP клиента Linphone из исходных кодов (для Ubuntu Linux)

Flexisip, Linphone и еще несколько технологий представляют собой OpenSource часть VOIP-инфраструктуры разрабатываемой Belledonne Communications и на данный момент это единственное решение IP-телефонии в Linux где помимо голосовых звонков, дополнительно представлен полноценный групповой чат и видео-звонки. Одним из главных минусов этой технологии является ее слабая распространенность и как следствие она недостаточно документирована, но как показывает практика официальной документации вполне хватает, а в случае чего можно и в исходные коды залезть.


Настройка Fail2ban для Asterisk (FreePBX)

Настройка Fail2ban для Asterisk (FreePBX)

Небольшое описание того, как я возился с настройкой Fail2ban в Centos 7. Что интересно, штатные правила конфигурации для FirewallD с виду работают, добавляют заблокированные адреса в соответствующие цепочки, но подключения клиентов все равно не блокируются. Для Asterisk который является просто лакомым кусочком для разного рода жуликов работать без Fail2Ban крайне опасно.


Есть вопросы?
Спрашивайте и я обязательно вам отвечу!

* Поля обязательные для заполнения .

Блог это некоммерческий проект! Если вам понравился мой блог и то что я пишу помогло вам на практике, то можете сказать спасибо материально.