淺談Asterisk的語音編碼(codec)

  • You do not have permissions to view this page - please try logging in.

版本為 20:17, 28 Jul 2026

到這個版本。

返回到 版本存檔.

查閱目前版本

目前 Asterisk 支援的語音編碼型式及比較表,整理如下表:

Codec
Sampling Rate(KHZ)
Bandwidth(kbps)
Nominal Bandwidth(kbps)
License
Remarks
 G.711 * 64  87.2 Open Source  
 G.722 16  48/56/64    Open Source  
 G.723.1 5.3/6.3  20.8/21.9 Proprietry  
 G.726  16/24/32/40  ?/47.2/55.2/? Open Source  
 G.729 ** 31.2 Patented  
 GSM  13    Proprietry  
 iLBC  15.2/13.3    Free to use  
 Speex  8/16/32  2.15-24.6(NB)
4-44.2(WB)
  Open Source  

* G711 有兩種版本,分別稱為 u-law 及 a-law。u-law 主要使用在北美和日本,a-law  則是使用在歐系國家。如果想了解更多有關這兩個不同的差異特性,請參考這篇 G.711 A Law versus u Law

** G729 有幾個不同的版本,是目前最常被使用的語音編碼型式。
G729: 原始版的編碼
G729A: 精簡版的G729,這個相容原始版G729,由於編碼經過簡化所以語音品質較差。
G729B: 此編碼有靜音抑制(silence suppression)且與上述幾項不相容。
G729AB: 這是有靜音抑制的G729A版本,而且相容 G729B。

語音編碼有關的Asterisk CLI指令 

CLI> core show codecs [audio|video|image]
系統可支援的編碼類型

CLI> core show translation
系統可用的語音編碼類型及不同類型間作轉換(transcoding) 所需要的時間

CLI> core show translation recalc 10
重新計算不同語音編碼轉換所需的時間

CLI> sip show channel
顯示目前的 SIP 通話所使用的語音編碼類型

CLI> iax2 show channels
顯示目前的 IAX2 通話所使用的語音編碼類型

設定檔的編碼名稱使用對照表
Codec Name
Type within Configuration
G.711 u-law ulaw
G.711 a-law alaw
G.722 g722
G.723.1 g723
G.726 g726
G.729 g729
GSM gsm
iLBC ilbc
Speex speex

常用的設定範例如下:

disallow=all
allow=ulaw
allow=alaw
allow=g729 

如何規劃頻寬的需求-語音編碼是關鍵

由於網路電話的語音傳遞媒介就是靠網路,所以網路頻寬及網路品質決定了電話網路化的實行效益,這裡的規劃主要指的是IPPBX主機的網路頻寬。頻寬的使用量取決於終端設備使用何種語音編碼類型以及主機容許多少個線上通話數量,所以系統在做規劃時,只要有這兩個數據就可以計算主機需求的總頻寬。

以下這些網站能協助你以最快速的方式得知所需的頻寬,請參考:

 

Powered by MindTouch Core