文章主要将如何配置Asterisk G729的编码和G723的编码问题
今天在配置语音电话过程中踩到一个坑,就是在对接线路过程中出现了一个报错,在传到对方线路过程中出现无法转码从而导致报错。
查看了下系统中的g729编码格式并没有安装。
下面就演示下如何进行安装相关编码格式。让Asterisk系统更加的完善,好方便兼容更多的硬件厂商。
参考文章地址:https://www.cnblogs.com/pipelone/archive/2009/06/10/1500195.html
我本地的环境为: Asterisk 13.23.1
[root@localhost modules]# asterisk -V
Asterisk 13.23.1
通过cat /proc/cpuinfo 命令查看cpu和内核架构是X86_64 还是 Core 或者X86 的CPU
通过查看asterisk的配置文件得知相关的模块引用的库文件存储的路径,即编码的二进制文件
[root@localhost modules]# pwd
/usr/lib64/asterisk/modules
然后去asterisk 官网地址找对应系统的.so 库文件,存放到这个路径
最好将相关的文件更改为权限755 因为参考之前的文件也是这个权限
红框权重的文件是我需要安装使用的g723 和g729 的编码二进制文件
然后有两种方式进行加载编码文件,让asterisk识别并生效
1.方法1 ,直接在系统下执行:
asterisk -rx "module load codec_g729-ast130-gcc4-glibc2.2-x86_64-core2.so"
这种方法在我这个版本下测试时并未执行成功;
2.方法2, 在进入到Asterisk 命令行下进行执行:
asterisk -rv
localhost*CLI> module load codec_g723-ast130-gcc4-glibc2.2-x86_64-core2.so
Loaded codec_g723-ast130-gcc4-glibc2.2-x86_64-core2.so
== Registered translator 'g723tolin' from codec g723 to slin, table cost, 900000, computational cost 1000
== Registered translator 'lintog723' from codec slin to g723, table cost, 600000, computational cost 3000
Loaded codec_g723-ast130-gcc4-glibc2.2-x86_64-core2.so => (g723 Coder/Decoder, based on Intel IPP)
这个是执行成功的显示
然后输入命令core show translation 然后输出目前安装了哪些编码
上面有g723编码已经安装然后再次装会报警告提示已经安装过该编码格式
还有一个命令也可以看编码格式:core show codecs
常用的语音编码格式
g723.1
g719
g729
g722
alaw
ulaw
今天就先到这儿。 明天再接着写。