記錄下,freeswitch 增加模組 mod_ilbc 的過程;
遇到的問題有:
問題-1: 執行時,載入模組 mod_ilbc 時,報找不到 ilbc.so (mod_ilbc.so 依賴 ilbc.so )
問題-2: 客戶端連線時,fs 報錯不支援 ilbc codec
一、檢查是否安裝依賴庫 ilbc
yum list ilbc2-devel
如果未安裝,安裝上:yum -y install ilbc2-devel
確保安裝了 ilbc 後,為了解決問題-1,將 ilbc2 所在的目錄新增到配置檔案裡:
發現 ilbc 位於 /usr/lib64/ilbc2 目錄下;
進入 /etc/ld.so.conf.d 目錄下,新建檔案 ilbc2-x86_64.conf
填入 ilbc 所在的路徑,即:/usr/lib64/ilbc2 ,儲存
執行 ldconfig 使修改生效
二、編譯、安裝
進入 mod_ilbc 原始碼所在目錄,比如:/opt/src/freeswitch-1.8.2/src/mod/codecs/mod_ilbc
make
make install
這就將 mod_ilbc.so 安裝上了
三、修改配置檔案
修改配置檔案 modules.conf.xml,支援自動載入 mod_ilbc:
比如:/etc/freeswitch/autoload_configs/modules.conf.xml
為了解決問題-2,修改配置檔案 vars.xml 支援 ilbc :
比如:/etc/freeswitch/vars.xml 增加 ilbc
至此,重啟 fs 即可。
可見,配置檔案都在 /etc/freeswitch 目錄下;
FreeSwitch 原始碼增加模組和單獨編譯模組
例項 新增freeswitch 本身的模組mod unimrcp fs 預設是不會把全部模組都編譯新增的,如果需要新增,首先需要到freeswitch 的原始碼 目錄 進行 configure 後 vi modules.conf 和進入build modules.conf.in 把需要的模組去掉注釋...
FreeSWITCH模組載入
一 模組介面 freeswitch的大部分功能是通重載入外部的模組來實現的。模組通過乙個資料結構向外部暴露了自己的介面。該資料結構定義如下 typedef struct switch loadable module function table switch loadable module func...
FreeSwitch編譯新增新模組
原始碼安裝free switch後,目錄 usr local src freeswitch存放的是原始碼 目錄 usr local freeswitch存放的是程式。如果要增加新的模組,需要在原始碼位置進行修改 如果只是簡單地修改程式執行設定,在程式位置進行相應修改就可以了。預設原始碼編譯安裝完成後...