1. MRCPv2协议简介

媒体资源控制协议(Media Resource Control Protocol, MRCP)是一种基于TCP/IP的通讯协议,用于客户端向媒体资源服务器请求提供各种媒体资源服务。此协议是由Cisco、Nuance等公司联合开发,由IETF作为Internet草案发布,经过不断的更新,目前最新的版本为RFC6787,可以支持的媒体资源业务包括文语转换(Text to Speech, TTS)、自动语音识别 (Automatic Speech Recognition, ASR)、录音(Recording)、声纹识别(Voiceprint Recognition, VPR)。

2. MRCPv2系统结构及协议控制

MRCP 协议本身不是独立的,它不仅仅依赖于TCP/IP协议,还依赖于SIP、SDP、RTP、RTCP、RTSP等协议。

其系统结构如图1所示:

(1) 控制面:它通过sip协议在客户端(MRCP Client)和服务器(MRCP Server)之间建立和管理会话(注:MRCPv1就使用RTSP协议完成控制,MRCPv2改为sip协议)。

(2)它通过SDP交换媒体能力以及通过RTP协议完成媒体的承载交换。

(3)业务面:它通过MRCP协议来控制完成媒体资源服务的相关请求,响应和事件的传递,从而为客户端提供所需要的媒体资源服务。

其协议控制机制如图2所示:

(1)SIP协商过程中,MRCP Client在INVITE消息中携带自身用于传递MRCP协议以及RTP语音流的SDP(IP地址和端口号)。

(2)在协商成功返回200消息中会带上MRCP Server侧的SDP。

(3)MRCP Client发起TCP连接创建,并且通过TCP连接上发送MRCP协议控制MRCP Server分配的资源。

(4)MRCP Client/Server通过在RTP连接上传输语音数据从而实现媒体资源业务。

(5)当业务应用结束时,终止SIP会话的同时,还需要关闭TCP和RTP连接。

MRCPv2的使用规范可以总结如下:

(1)MRCP Client 通过SIP&SDP建立与MRCP Server的MRCP控制通道(使用MRCP 通道ID进行唯一标识,MRCP Server返回200消息时,通过a==channel属性指定)

(2)可以使用SIP的Re-INVITE消息添加或者删除一个会话中的MRCP控制通道,所以一个会话可以拥有多个MRCP控制通道(比如:一个会话可以同时拥有ASR&TTS 通道)

(3)多个MRCP控制通道可以共享同一个TCP链接。

(4)一个MRCP消息只能携带一个MRCP通道ID。

(5)MRCP控制消息不能更改SIP绘话的状态。

(6)由于MRCP不保证传输的可靠性,所以必须使用TCP来保证其传输。

3 语音识别技术及其在电信智能语音识别业务中的应用

自动语音识别技术(Automatic Speech Recogition ASR)是一种将人的语音转换为文本的技术,其广泛应用于语音通讯系统,声控电话交换、数据查询、订票系统、电信银行客服、计算机控制、工业控制等领域。

通常,我们说的语音识别可以分为固定次识别以及自然语音识别,固定词语音识别只能识别已经指明的固定短语或词,而且用户也只能说这些固定的词,否则无法识别,而自然语音识别可以识别用户随意说的短语或者句子,很显然自然语音识别更易用,其技术难度也更大。

近几年来,自然语音识别相关的技术随着移动互联网的发展迎来了迅猛的发展,在Google引领下,互联网、通信公司纷纷自然把自然语音识别作为重要的研究方向。

美国市场调查咨询公司Gartner于2013年发布的新兴技术成熟度曲线显示,语音识别技术已经走向成熟,在未来2-5年之内将会有大幅度的利用,而自然语音问答目前技术期望过热区,预计在5-10年会有大幅度的利用。自然语音问答技术中就使用到了自然语音识别。

在电信领域,语音识别技术应用多年来一直停留在固定词识别上,基本限定在简单的IVR领域,因为限制了用户的语音输入范围、易用性和可靠性受限导致应用实际并不广泛,从目前各大运营商的客服电话就很容易发现,采用按键式的IVR仍然是主流。

随着近几年语音识别技术的发展,自然语音识别技术逐渐完善,在移动互联网等可靠性不是太高的领域得到广泛的应用,iphone 的siri, QQ的语音输入、Googe的语音翻译、科大恶移动合作的灵犀扥智能语音识别业务都广泛应用到此技术。

拥有海量一手语音数据的电信行业也因为自然语音识别技术的成熟,智能语音识别业务将会迎来新的发展机遇。

MRCPv2在电信智能语音识别业务中的应用的更多相关文章

  1. HBase在大搜车金融业务中的应用实践

    摘要: 2017云栖大会HBase专场,大搜车高级数据架构师申玉宝带来HBase在大搜车金融业务中的应用实践.本文主要从数据大屏开始谈起,进而分享了GPS风控实践,包括架构.聚集分析等,最后还分享了流 ...

  2. Nebula Graph 在网易游戏业务中的实践

    本文首发于 Nebula Graph Community 公众号 当游戏上知识图谱,网易游戏是如何应对大规模图数据的管理问题,Nebula Graph 又是如何帮助网易游戏落地游戏内复杂的图的业务呢? ...

  3. 重新想象 Windows 8.1 Store Apps (81) - 控件增强: WebView 之加载本地 html, 智能替换 html 中的 url 引用, 通过 Share Contract 分享 WebView 中的内容, 为 WebView 截图

    [源码下载] 重新想象 Windows 8.1 Store Apps (81) - 控件增强: WebView 之加载本地 html, 智能替换 html 中的 url 引用, 通过 Share Co ...

  4. 重新想象 Windows 8.1 Store Apps (81) - 控件增强: 加载本地 html, 智能替换 html 中的 url 引用, 通过 Share Contract 分享 WebView 中的内容, 为 WebView 截图

    原文:重新想象 Windows 8.1 Store Apps (81) - 控件增强: 加载本地 html, 智能替换 html 中的 url 引用, 通过 Share Contract 分享 Web ...

  5. 区块链Fabric技术在托管业务中的运用初探

    区块链Fabric技术在托管业务中的运用初探 什么是Fabric技术 HyperLedger是IBM.Intel等多家公司正开展的一个区块链项目,包含了Fabric.Iroha等多项技术,其中最为活跃 ...

  6. redis整合Spring集群搭建及业务中的使用

    1.redis安装 Redis是c语言开发的. 安装redis需要c语言的编译环境.如果没有gcc需要在线安装.yum install gcc-c++ 安装步骤: 第一步:redis的源码包上传到li ...

  7. 权限组件(15):rbac的使用文档和在业务中的应用

    这里用主机管理系统当做示例. 一.将rbac组件拷贝到项目中. 注意: rbac自己的静态文件.layout.html(被继承的模板).bootstrap.fontsize.公共的css.jquery ...

  8. PostgreSQL 在视频、图片去重,图像搜索业务中的应用

    摘要: PostgreSQL 在视频.图片去重,图像搜索业务中的应用作者digoal日期2016-11-26标签PostgreSQL , Haar wavelet , 图像搜索 , 图片去重 , 视频 ...

  9. “造轮运动”之 ORM框架系列(一)~谈谈我在实际业务中的增删改查

    想想毕业已经快一年了,也就是大约两年以前,怀着满腔的热血正式跨入程序员的世界,那时候的自己想象着所热爱的技术生涯会是多么的丰富多彩,每天可以与大佬们坐在一起讨论解决各种牛逼的技术问题,喝着咖啡,翘着二 ...

随机推荐

  1. Spring Boot使用MyBatis Generator、Swagger

    MyBatis是Java目前主流的ORM框架,在Spring Boot中使用MyBatis可以参考这篇文章:http://www.ityouknow.com/springboot/2016/11/06 ...

  2. 使用Minikube部署本地Kubernetes集群(二十八)

    前言 使用Minikube部署本地k8s集群相对比较简单,非常推荐将其用于本地k8s开发环境,唯一麻烦点的仅仅是网络问题. 在本篇教程中,我们使用了国内的镜像来完成本地k8s集群的搭建.如果搭建过程中 ...

  3. 有意思的 CDN

    Clean Clean false 7.8 磅 0 2 false false false EN-US ZH-CN AR-SA /* Style Definitions */ table.MsoNor ...

  4. Git小技巧之使用Rebase命令合并提交

    想要获取更多文章可以访问我的博客 - 代码无止境. 在日常的开发过程中,我们一个功能可能会有很多次提交.而且我们公司的开发是不允许直接往公司仓库提交代码,所以需要fork到自己的仓库然后merge过去 ...

  5. 如何用ModelSim对Xilinx ISE产生的网表进行仿真

    图: 在对设计的芯片进行测试时,经常要用到FPGA,可是里面的仿真工具却不如Modelsim那么好用,且在规模比较大时,ISE在仿真时,软件经常会报告内存限制的问题,此时一般会切换到Modelsim软 ...

  6. Jmeter自定义Java请求开发

    一.本次实验目的 IDEA新建maven项目,使用java开发自定义jmeter的请求. 本次开发使用的代码,会百度云分享给大家. 二.本次实验环境 Idea 2017.02 Jmeter 5.1.1 ...

  7. Java面试题汇总---整理版(附答案)

    今天继续为大家整理Java面试题,并涉及数据库和网络等相关知识,希望能帮助到各位开发者. 1,为什么要用spring,Spring主要使用了什么模式? spring能够很好的和各大框架整合,它通过IO ...

  8. 数据库系统概念:基础的SQL

    public class DataBase { public static void main() { } } /* 3.1 SQL查询语言概览 SQL语言有一下几个部分: 数据定义语言:提供定义关系 ...

  9. @ImportResource导入的xml配置里的Bean能够使用@PropertySource导入的属性值吗?

    每篇一句 大师都是偏执的,偏执才能产生力量,妥协是没有力量的.你对全世界妥协了你就是空气.所以若没有偏见,哪来的大师呢 相关阅读 [小家Spring]详解PropertyPlaceholderConf ...

  10. CitusDB Multi-node Install and Test

    Multi-node setup on CentOS 参考官网:https://docs.citusdata.com/en/v6.2/installation/production_rhel.html ...