Сборка FS с полноценным кодеком g729 под винодозу.
1. Скачать архив исходников FS
http://files.freeswitch.org. Скачать исходники кодека, я использовал fs-mod_g729-itu.tar.bz2
https://yadi.sk/d/Ad2JTOZyenDgz.
2. Распаковать исходники в отдельную папку.
3. Я собирал в VisualStudio, в Ваткоме и цигвине у меня не получилось. Запускаем VS и открываем солюшн Freeswitch.2012.sln (если версия VS другая - проект будет другой).
4. Ждём пока VS проверит все зависимости.
5. В солюшн эксплорер (окно слева) указываем самый верх дерева Solution 'Freeswitch.2012'.
6. В окне конфигуратора (отмечено красным) меняем Дебаг на Релиз и Win32 на x64
7. В солюшн эксплорере жмем правой кнопкой на Solution 'Freeswitch.2012' и выбираем Build Solution. Ждём пока построится. Произойдёт полная сборка всего FS но пока с кодеком в транзитном режиме.
8. После построения, в солюшн эксплорере в дереве проекта ищем mod_g729. Там находим исходник и удаляем его.
9. Потом нажать правой кнопкой на mod_g729 выбрать Add -> Existing Item и выбрать файл mod_g729.c и пакета fs-mod_g729-itu.tar.bz2. VS заругается что много недоопределено, берём папку g729a_v11 из fs-mod_g729-itu.tar.bz2 и помещаем её в исходники FS вот по этому адресу:
\freeswitch-1.4.15\src\mod\codecs\mod_g729. Сохраняем солюшн.
10. Сборка библиотеки G729-ITU.lib.
10.1 Создаём в VS новый проект с именем "G729-ITU".
10.2 В солюшн эксплорер жмём правой кнопкой на Source Files и выбираем Add -> Existing Item и выбираем все файлы *.c.
10.3 В окне конфигуратора (отмечено красным) меняем Дебаг на Релиз и Win32 на x64. Далее следуем указаниям картинки
Жмём ОК и собираем солюшн см. п 7.
10.4 После чего, в папке
\freeswitch-1.4.15\src\mod\codecs\mod_g729\g729a_v11 появится библиотека G729-ITU.lib.
11. После этого, открываем проект FS, который собирали ранее.
12. В свойствах солюшена делаем следующие настройки
жмём ОК.
13. В свойствах mod_g729 делаем следующие настройки
для линковщика нужно добавить путь, где лежит собранная нами библиотека. Жмём ОК.
14. Для mod_g729 делаем сборку
15. Проверяем в папке с релизом наличие mod_g729.dll.
16. Переносить на боевой сервер надо весь собранный релиз FS, иначе не заработает.
Малость геморрно, но заработало.