浅谈Asterisk的语音编码(codec)

目前 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主机的网络频宽。带宽的使用量取决于终端设备使用何种语音编码类型以及主机容许多少个在线通话数量,所以系统在做规划时,只要有这两个数据就可以计算主机需求的总带宽。

以下这些网站能协助你以最快速的方式得知所需的带宽,请参考:

  • Asterisk Guide Bandwidth Calculator 
  • asteriskguru.com

你可能感兴趣的:(浅谈Asterisk的语音编码(codec))