当前位置: 首页 > news >正文

个人可否建立网站网页制作工具按其制作方式分可以分为

个人可否建立网站,网页制作工具按其制作方式分可以分为,aspcms模板,国内简约网站设计欣赏最近得知有人受mrcp的困扰,于是写了这篇小文,希望能有所帮助 FreeSWITCH版本选择 目前当然选择1.10.10,不建议老版本,差别在于老版本用到的libmrcp比较旧,是1.2版本,bug比较多,有时会crash&am…

最近得知有人受mrcp的困扰,于是写了这篇小文,希望能有所帮助

  • FreeSWITCH版本选择

目前当然选择1.10.10,不建议老版本,差别在于老版本用到的libmrcp比较旧,是1.2版本,bug比较多,有时会crash,而FreeSWITCH1.10.10用libmcrp1.6,要稳定很多

  • 编译

编译不在本文的讨论范围,可能有点小麻烦,但可以解决

  • 配置

可以找到FreeSWITCH1.10.6版本的vanilla配置,复制过来,可以这样做(以ali为例):

  1. modules.conf.xml里面增加 <load module="mod_unimrcp"/>
  2. unimrcp.conf.xml里面 <param name="default-tts-profile" value="ali"/> 和<param name="default-asr-profile" value="ali"/>
  3. mrcp_profiles目前下的文件只保留nuance-5.0-mrcp-v2.xml,其它的文件可以删除
  4. nuance-5.0-mrcp-v2.xml改名为ali.xml
  5. ali.xml里面, name改为ali,server-ip和server-port指向sdm的sip地址和sip端口
  • 测试路由
<!--tts例子1-->
<action application="answer" data="">
<action application="set" data="playback_delimiter=!">  
<action application="set" data="tts_engine=unimrcp"> <!-- 或者unimrcp:ali -->
<action application="set" data="tts_voice=xiaoyan"> <!-- 这个参数很重要,要找阿里确认 -->
<action application="playback" data="say:'欢迎使用tts测试系统'!welcome.wav"> <!--同时tts和本地语音文件-->
<!--tts例子2-->
<action application="answer" data="">
<action application="speak" data="unimrcp|xiaoyan|欢迎使用tts测试系统"> <!--第二个参数是xiaoyan,但需要找阿里确认-->

本文没有提供asr例子,可以去别的地方去找

我觉得tts参数比较少,比较容易调试。先搞定tts, asr就不难了

  • 调试

调试的主要方法是看日志和抓包,从sip invite开始看,里面一般是二个media,其中一个当然是rtp(关注c地址),另外一个就是mrcp(关注地址和mrcp端口)

  • 常见问题

1.ali和tengxun如何并存

同时放二个文件:ali.xml和tengxun.xml,当然,profile 名称不能一样,client-port不能一样

在应用层,tts_engine设置为unimrcp:ali或者设置为unimrcp:tengxun,这样就可以区别开了

2.听不到tts,抓包发现tts server没有发rtp流过来,但sip流程正常

看fs的c地址是不是127.0.0.1,如果是,那么client-ip和rtp-ip不能配成auto(让fs自动找),要修改成$${local_ip_v4},或者写死,比如192.168.1.100(本机ipv4)。此外,如果有nat,那么client-ext-ip和rtp-ext-ip可能需要设置下。抓包能定位到这些问题(有兴趣的可以研究下mod_unimrcp.c)

3.1001 bridge 1002,需要同时识别,要怎么做

重点是2条腿都需要execute 'detect_speech'先启动,不能execute 'play_and_detect_speech',后者不能返回

在收到pause之后,execute 'detect_speech resume' 继续识别

下面给出启动时的lua代码:

function debug(s)session:consoleLog("DEBUG", (s or "(NULL)") .. "\n")
end
debug("start-asr entry")-- session:execute("info")
debug("caller = " .. session:getVariable("caller_id_number") .. " callee = " .. session:getVariable("destination_number"))
session:setVariable("fire_asr_events", "true")
-- 开始识别
session:execute("detect_speech", "unimrcp {start-input-timers=true,Speech-Complete-Timeout=10000,no-input-timeout=3000,recognition-timeout=60000}builtin:grammar/boolean?language=zh-CN;y=1;n=2 builtin")
-- session:execute("detect_speech", "param start-input-timers true")
-- session:execute("detect_speech", "param Recognition-Mode continuous")
debug("start-asr exit")

uuid_broadcast可以执行application,对esl程序可能有用(本人不会esl,好惭愧)

  • 其它

sdm支持连续的语音识别,但mrcp不支持,或许以后可以修改源码来支持这个特性

dtmf mrcp支持,但sdm不支持,lua可以设置回调,可能可以解决识别的过程中收码的问题

function my_cb(s, type, obj, arg)
-- ...
endblah = "w00t"
session:setInputCallback("my_cb", "blah")
session:execute("play_and_detect_speech",...
-- ...

本文完全是凭记忆写成的,或许以后可以适当补充日志。

http://www.15wanjia.com/news/190561.html

相关文章:

  • 网站建设验收方发言稿怎么建设空包网站
  • linux下网站搭建seo 工具分析
  • 配音网站赚钱百度app推广
  • 成都怎样制作公司网站神魔网站建设
  • 网站内容有哪些有什么网站
  • 揭阳网站设计制作国外游戏网站欣赏
  • 创建一个购物网站小程序是什么时候出来的
  • 广东企业品牌网站建设价格专业网站策划
  • 做网站的相关协议华为网站建设方案模板
  • 网站pv uv有什么作用网站开发 php
  • 南县做网站多少钱阿里云怎么建设网站
  • 上海网站建设专家做网站 我们的工人怎么写
  • 遵义网站开发长沙网站整站优化
  • 网站怎么做qq的授权登陆南充网站开发
  • 网站建设微信托管电子商务很难就业吗
  • 族蚂建站wordpress 密码忘了
  • 网站建设与制作企业百度网站的设计风格
  • 单人做网站需要掌握哪些知识免费建站免费的免费
  • 哈尔滨网站设计公司好企业资源计划系统
  • 深圳西丽网站建设网页布局的方式有哪些
  • 用red5做直播网站简单的静态网页模板
  • 欢乐海岸网站建设全网媒体整合推广平台
  • 外贸seo网站搭建网站主题服务
  • php网站链接数据库做网站字体规范
  • 网站主机测速木材加工公司网站建设
  • 一起做网店潮汕站河南做网站的费用
  • 节水网站建设什么人做网站
  • 自己做的网站如何让别的网可以查看做网站难么
  • 网站开发包括几部分网站换新域名
  • 密云网站建设服务东营网站建设怎么建设