FreeSWITCH默認是不支持G729轉碼的,但可至此G729媒體透傳,因此如果兩個話機有一個只支持G729時是無法進行呼叫的,同時在使用G729編碼時FreeSWITCH是不能進行錄音的。
當然如果商業應用的話可以購買G729的許可,10刀一通道,或者使用硬件的轉碼卡,價格貌似就更高了。
網絡上有很多使用8000hz的源碼包編譯FreeSWITCH可用的G729模塊,但是效果一般,我這里使用的是bcg729的源碼來進行編譯,轉碼效果比8000hz的稍好。BCG729當前最新的版本是1.0.3
準備工作:與當前運行的FreeSWITCH版本一致的源碼一份
開始編譯:
1、進入源碼../src/mod/endpoints目錄
cd /usr/src/freeswitch-1.6.19/src/mod/endpoints2、檢出FreeSWITCH適用的G729模塊(這部分源碼是對BCG729進行FreeSWITCH的適配)
git clone https://github.com/xadhoom/mod_bcg729.git3、將mod_bcg729改名為mod_g729
mv mod_g729 mod_g729_bak mv mod_bcg729 mod_g7294、返回FreeSWITCH源碼主目錄,執行配置
./configure5、進入../src/mod/endpoints/mod_g729目錄,并執行編譯
cd /usr/src/freeswitch-1.6.19/src/mod/endpoints/mod_g729 make ##編譯時如果提示找不到頭文件,可以將FreeSWITCH源碼include目錄下的對應頭文件復制到 #../mod_g729/bcg729/include/目錄,還有其他找不到的頭文件可以使用find命令 #在FreeSWITCH源碼目錄下搜索,然后復制到../mod_g729/bcg729/include/目錄,然后再重新編譯6、編譯完成后,將mod_bcg729.so復制到FreeSWITCH的庫目錄,也可以直接替換FreeSWITCH的庫目錄下的G729庫文件
cp mod_bcg729.so /usr/lib/freeswitch/mod/7、修改FreeSWITCH配置文件vars.xml,在global_codec_prefs和outbound_codec_prefs中添加G729
<X-PRE-PROCESS cmd="set" data="global_codec_prefs=PCMU,PCMA,GSM,G729,G7221@32000h,G7221@16000h,G722,OPUS,VP8" /> <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM,G729" />8、在fs_cli中加載BCG729模塊
unload mod_g729 load mod_bcg729另外有需要云服務器可以了解下創新互聯cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
本文題目:FreeSWITCH折騰筆記5——G729轉碼支持-創新互聯
轉載來于:http://www.2m8n56k.cn/article14/pepge.html
成都網站建設公司_創新互聯,為您提供Google、手機網站建設、品牌網站建設、網頁設計公司、響應式網站、自適應網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯