freeswitch实时通话语音质检实现

实时语音质检

概述

该功能是基于新增mod_asr模块完成,核心是switch_core_media_bug_add添加media bug实现。该核心不仅限于语音质检,同时也是智能语音对接的核心模块。本次只实现实时语音质检功能,合作或技术支持请添加主页wx

功能

整体架构就是简单的mod_asr模块、asr服务器、ESL接收程序。其实还有很多其他架构方式,比如socket服务端接收语音流然后给asr服务器,返回识别结果后送还给socket服务器处理等。Asr服务器可以是自研或者大厂的云asr。目前咱们是使用的阿里云asr3.0平台,以下是所需程序

  1. Asr服务:NlsSdkCpp3.X
  2. Mod模块:mod_asr,需要自行编写或参照现有样例,输出参数符合asr平台接口
  3. 接收平台:ESL注册程序

安装

将mod_asr_ali_3.x.tar.gz上传至/usr/local/src下

cd /usr/local/src

tar -zvxf mod_asr_ali_3.x.tar.g

chmod -R 755 mod_asr_ali_3.x

cd /usr/local/src/mod_asr_ali_3.x

make

cp mod_asr.so /usr/local/freeswitch/mod

修改aliasr.xml中参数为自己的参数。需要注册阿里语音交互业务

启动freeswitch

查看是否加载mod_asr

show modules|grep 'mod_asr'

如下说明已记载,如果没有执行 load mod_asr加载

type,name,ikey,filename

application,start_asr,mod_asr,/usr/local/freeswitch/mod/mod_asr.so

application,stop_asr,mod_asr,/usr/local/freeswitch/mod/mod_asr.so

完成以上操作后,执行命令测试

originate user/1001 'transfer:9999' inline

拨号计划添加

<extension name="asr9999">

<condition field="destination_number" expression="^(9999)$">

<action application="answer"/>

<action application="log" data="CRIT ================tmp:9999" />

<action application="start_asr" data=""/>

<action application="echo"/>

</condition>

</extension>

测试记录会在控制台打印

最后开发ESL平台,监听CUSTOM事件,结果会通过event传输过来

开发效果如下:

实时语音质检

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十年一梦惊觉醒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值