asterisk作为VoIP系统,其一大特性是对RTP媒体流的处理能力,由于开源解码器的存在,以及可以运行在价格低廉的X86硬件系统上,经常被用于完成不同系统间的语音编码转换,以取代价格相对昂贵的硬件设备。
常见的编码转换场景例如 局域网内使用ulaw,alaw或者g722编码,外呼时使用g729编码以节省带宽
asterisk 中支持的语音编码
查看 asterisk 支持的编码格式命令为
图中看到的数字表示两种编码转换所需要的时间,数值越小,则表示转码速度越快,-表示不支持此种编码转换
使用 module load codec_ tab键 可以查看/加载系统支持的语音编码
|
astercc_us*
CLI
>
module
load
codec_
<
tab
>
codec_a_mu
.
so
codec_adpcm
.
so
codec_alaw
.
so
codec_dahdi
.
so
codec_g722
.
so
codec_g726
.
so
codec_gsm
.
so
codec_lpc10
.
so
codec_ulaw
.
so
codec_g729
-
ast16
-
icc
-
glibc
-
x86_64
-
pentium4
.
so
|
加载和卸载 asterisk 模块的命令分别为 module load .so 以及 module load .so,例如
|
astercc_us*
CLI
>
module
unload
codec_g729
-
ast16
-
icc
-
glibc
-
x86_64
-
pentium4
.
so
Unloaded
codec_g729
-
ast16
-
icc
-
glibc
-
x86_64
-
pentium4
.
so
==
Unregistered
translator
'lintog729'
from
format
slin
|