Стандартный модуль mod_g729.so во FreeSwitch не умеет транскодить, что бы стать обладателем полноценного кодека G729 нужно его либо купить либо собрать самому, благо энтузиасты модифицировали под FreeSwitch кодек открытый fsg729, его осталось только скачать и собрать. Под катом я расскажу как это сделать.
Само действо очень простое и не имеет каких то сложностей, первым делом качаем исходники:
1 2 3 |
cd /usr/src git clone https://github.com/xadhoom/mod_bcg729 cd ./mod_bcg729 |
Далее редактируем Makefile и меняем там 2 переменные FS_INCLUDES и FS_MODULES.
У меня после редактирования выглядит так:
1 2 3 4 5 |
################################ ### FreeSwitch headers files found in libfreeswitch-dev ### FS_INCLUDES=/usr/local/freeswitch/include/freeswitch FS_MODULES=/usr/local/freeswitch/mod ################################ |
Сохраняемся.
1 2 |
make make install |
Если всё прошло без ошибок, убеждаемся что модуль в нужной директории
1 |
ls /usr/local/freeswitch/mod | grep bcg729 |
Открываем конфиг файл: /usr/local/freeswitch/conf/autoload_configs/modules.conf.xml
Комментируем там модуль mod_g729.so и добавляем mod_bcg729.so. Должно получиться примерно следующее:
1 2 |
<!-- <load module="mod_g729"/>--> <load module="mod_bcg729.so"/> |
Перезапускам FreeSwitch и всё готово.
после
asterisk -rvvv
module show like pj
пишет
0 modules loaded , значит не подгрузились модули PJSIP