開源軟交換Freeswitch支持的編碼種類比較多,用戶可以在freeswitch平臺上開發企業IPBX,呼叫中心,調度系統,語音IVR,電子傳真,多方會議,錄音系統等等通信系統。這些系統都需要相應的語音編碼進行會話。但是大部分編碼的轉換是靠軟件來處理,不僅處理的會話路數有限,而且占用過多的CPU資源,從而影響了Freeswitch 的性能。作為Freeswitch戰略合作伙伴,Sangoma 長期支持Freeswitch的技術開發和市場推廣。Sangoma充分發揮強大的語音板卡研發能力,使用了世界上運營商級的編碼處理芯片,完美地解決了freeswitch的編碼轉換的瓶頸,從而讓Freeswitch作為運營商級的軟交換平臺成為可能。

編碼的基本知識
語音編碼涉及了幾個方面的內容:算法,傳輸速率,采樣率和打包。常用的有窄帶語音編碼和寬帶語音編碼,例如:711 和722語音編解碼。Freeswitch支持的有:

編碼轉換的環境因素:
- 通話終端之間的編碼不一致,需要編碼轉換。
- Freeswitch必須介于媒體流之間。
- VOIP SIP 中繼落地需要編碼轉換。
- 如果使用軟件進行編碼的話,增加CPU負載。
- 一些應用服務需要freeswitch去處理媒體流,例如:通話錄音,語音檢查。

Freeswitch的單向媒體轉換處理原理

SIP 終端之間呼叫,并進行編碼轉換

不經過Freeswitch,直接透傳編碼,進行點對點通信
編碼之間的協商機制要素
通話發起以后,Freeswitch必須選擇一個編碼,在處理的過程中,將從終端支持的編碼中選擇一個支持的編碼,然后雙方進行匹配。支持兩種選擇編碼的方式:當呼叫進入撥號規則,或者當對端接聽這個呼叫。
媒體處理的模式:包括透傳模式和透明代理模式。
透傳模式的情況下:媒體不通過Freeswitch,直接進行點對點通信,但是雙方的編碼必須是一致的,Freeswitch 負責SIP 信令的控制,缺點是錄音功能無法工作。通過修改以下幾個參數來透傳編碼:bypass_media=true和inbound-no-media。