- 作者:james.zhu(james.zhu@hiastar.com) www.hiastar.com 微信公眾號:asterisk-cn
- Asterisk課堂-如何通過(guò)源代碼安裝方式安裝Asteisk/dahdi
- Asterisk課堂-系統部署環(huán)境要求
- Asterisk課堂-Asterisk技術(shù)架構
- Asterisk課堂-撥號規則基礎
- Asterisk課堂-創(chuàng )建第一個(gè)撥號規則
- Asterisk課堂-撥號規則中的Contexts
- Asterisk課堂-撥號規則中變量的使用
- Asterisk課堂-撥號規則中的Extensions用法
- Asterisk課堂-撥號規則中匹配模式
- Asterisk課堂-IAX2 介紹
- Asterisk課堂-IAX2 呼叫流程
- Asterisk課堂-SIP介紹
- Asterisk課堂-SIP呼叫流程
- Asterisk課堂-終端注冊
- Asterisk課堂-SIP Trunk
- Asterisk課堂-SIP和NAT
- Asterisk課堂-撥號規則中的Include使用方法
- Asterisk課堂-撥號規則中的語(yǔ)音播放
- Asterisk課堂-DTMF 介紹
- Asterisk課堂-語(yǔ)音IVR基礎
- Asterisk課堂-Timeout 超時(shí)設置
- Asterisk課堂-CLI 使用方法
- Asterisk課堂-關(guān)于Input DTMF介紹
- Asterisk課堂-撥號規則中呼叫控制
- Asterisk課堂-如何使用Debug
- Asterisk課堂-撥號規則中的優(yōu)先級
- Asterisk課堂-語(yǔ)音編碼介紹

視頻中介紹了幾種編碼的特點(diǎn)和各自的特點(diǎn):
本章節主要介紹幾個(gè)在A(yíng)sterisk環(huán)境中關(guān)于語(yǔ)音編碼的相關(guān)問(wèn)題。它們包括:語(yǔ)音編碼的基本屬性,使用語(yǔ)音編碼原因,幾種語(yǔ)音編碼的各自的特點(diǎn)。
語(yǔ)音編碼包括四個(gè)基本的屬性,它們是:Sampling rate,Packet size,Complexity,Bandwidth。 語(yǔ)音首先經(jīng)過(guò)空氣傳播,并且通過(guò)一定的設備采集了語(yǔ)音以后,經(jīng)過(guò)設備的處理,完成數字轉換,最后轉化成一定的數據形式,通過(guò)網(wǎng)絡(luò )或者其他設備發(fā)送到相應的目的地。對于語(yǔ)音電話(huà)系統來(lái)說(shuō),根據數字通信之父Nyquist的采樣定律,8kHz是可以滿(mǎn)足窄帶采樣率的要求。這個(gè)過(guò)程就涉及了以上這四個(gè)屬性。因為要適應不同的環(huán)境和設備的要求,采樣律可能有所不同。Packet size 是語(yǔ)音的打包時(shí)長(cháng),顧名思義就是在一定時(shí)間內語(yǔ)音文件在傳輸之前打包幀數據需要的時(shí)間。因為不同編碼的傳輸帶寬要求不同,語(yǔ)音數據以幀的方式來(lái)測試,這樣需要要求在一定時(shí)間內對每個(gè)幀數據進(jìn)行打包,以便穩定地發(fā)送到對端。一般都限定在20毫秒內完成,有的語(yǔ)音編碼可支持靈活配置。語(yǔ)音編碼算法的計算復雜度和帶寬,CPU有著(zhù)非常緊密的聯(lián)系,采用不同算法會(huì )消耗不同的系統資源,例如需要高壓縮比的編碼還是低壓縮比的編碼。這樣就會(huì )導致網(wǎng)絡(luò )帶寬占用的不同。Bandwidth 是一個(gè)核心的考慮因素,為了節省帶寬,很多用戶(hù)考慮使用G.729 編碼。但是,G.729 會(huì )提高部署成本。



為什么在asterisk中使用語(yǔ)音編碼? 根據上面的介紹,因為網(wǎng)絡(luò )的不同和終端的不同,導致通話(huà)使用的語(yǔ)音編碼不同,雙方不同的語(yǔ)音編碼不會(huì )實(shí)現正常的通話(huà)。這時(shí),需要Asterisk來(lái)進(jìn)行一個(gè)語(yǔ)音編碼的轉換功能,這樣會(huì )導致系統CPU負載增加,可能影響系統的穩定性。


Asterisk環(huán)境中常用編碼的特點(diǎn)。在目前經(jīng)常使用的幾種語(yǔ)音編碼中,大部分用戶(hù)需要使用G.711 或者G.729 編碼。G.711 使用在傳統的PSTN語(yǔ)音接入環(huán)境中,G.729 則使用在IP測定語(yǔ)音編碼環(huán)境,例如現在的SIP中繼或者IMS。為了保證系統的穩定性,選擇語(yǔ)音編碼時(shí)管理員需要考慮幾個(gè)方面的因素,例如語(yǔ)音質(zhì)量,帶寬占用比,CPU消耗情況,部署費用的問(wèn)題。當然管理員也只能在這幾個(gè)因素之間做一個(gè)平衡和妥協(xié)。圖例中列出了它們各自的特點(diǎn)。如果采用了G.729編碼,在系統部署時(shí)要考慮編碼轉換的問(wèn)題。編碼轉化的成本大約一路差不多10美金左右。編碼轉換的解決方案包括通過(guò)IMS設備或者語(yǔ)音編碼卡來(lái)解決,也可以購買(mǎi)Digium官方的軟件許可證來(lái)支持。另外,還有免費的編碼解決方案,但是這里提醒大家,這種解決方案不能使用在商業(yè)的環(huán)境中,以免引起法律方面的糾紛,同時(shí)語(yǔ)音質(zhì)量也得不到保障。管理員在部署Asterisk服務(wù)器時(shí),筆者建議用戶(hù)使用計算工具來(lái)計算出不同編碼的帶寬占用比,這樣可以獲得一個(gè)大概部署預算費用。


本章節簡(jiǎn)單討論了語(yǔ)音編碼的基本概念和相關(guān)的幾個(gè)參數,也討論了為什么使用不同的語(yǔ)音編碼,還有幾個(gè)不同語(yǔ)音編碼的特點(diǎn)。另外,我們這里沒(méi)有討論寬帶的編碼和其他高清編碼,還有最新的Opus 和其他編碼類(lèi)型。當然,這些編碼也逐漸支持了Asterisk環(huán)境。因為網(wǎng)絡(luò )環(huán)境不同,終端不同,筆者建議用戶(hù)需要根據自己的網(wǎng)絡(luò )環(huán)境做進(jìn)一步的測試來(lái)保證系統的語(yǔ)音質(zhì)量。