MRCPv2在电信智能语音识别业务中的应用
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在电信智能语音识别业务中的应用的更多相关文章
- HBase在大搜车金融业务中的应用实践
摘要: 2017云栖大会HBase专场,大搜车高级数据架构师申玉宝带来HBase在大搜车金融业务中的应用实践.本文主要从数据大屏开始谈起,进而分享了GPS风控实践,包括架构.聚集分析等,最后还分享了流 ...
- Nebula Graph 在网易游戏业务中的实践
本文首发于 Nebula Graph Community 公众号 当游戏上知识图谱,网易游戏是如何应对大规模图数据的管理问题,Nebula Graph 又是如何帮助网易游戏落地游戏内复杂的图的业务呢? ...
- 重新想象 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 ...
- 重新想象 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 ...
- 区块链Fabric技术在托管业务中的运用初探
区块链Fabric技术在托管业务中的运用初探 什么是Fabric技术 HyperLedger是IBM.Intel等多家公司正开展的一个区块链项目,包含了Fabric.Iroha等多项技术,其中最为活跃 ...
- redis整合Spring集群搭建及业务中的使用
1.redis安装 Redis是c语言开发的. 安装redis需要c语言的编译环境.如果没有gcc需要在线安装.yum install gcc-c++ 安装步骤: 第一步:redis的源码包上传到li ...
- 权限组件(15):rbac的使用文档和在业务中的应用
这里用主机管理系统当做示例. 一.将rbac组件拷贝到项目中. 注意: rbac自己的静态文件.layout.html(被继承的模板).bootstrap.fontsize.公共的css.jquery ...
- PostgreSQL 在视频、图片去重,图像搜索业务中的应用
摘要: PostgreSQL 在视频.图片去重,图像搜索业务中的应用作者digoal日期2016-11-26标签PostgreSQL , Haar wavelet , 图像搜索 , 图片去重 , 视频 ...
- “造轮运动”之 ORM框架系列(一)~谈谈我在实际业务中的增删改查
想想毕业已经快一年了,也就是大约两年以前,怀着满腔的热血正式跨入程序员的世界,那时候的自己想象着所热爱的技术生涯会是多么的丰富多彩,每天可以与大佬们坐在一起讨论解决各种牛逼的技术问题,喝着咖啡,翘着二 ...
随机推荐
- 浅谈block, inline和inline-block的区别
block 块元素 inline 内联元素 常见的块元素有:div, p, h1~h6, table, form, ol, ul等 常见的内联元素有:span, a, strong, em, l ...
- Dubbo源码学习之-SPI介绍
前言 学习之路还是要戒骄戒躁,一以贯之的积累前行.之前的公司部门技术达人少,自己总向往那些技术牛人多的团队,想象自己进去之后能跟别人学到多少东西.如今进到一个这样的团队之后,却发现之前自己的想法过于幼 ...
- 利用HtmlAgilityPack插件写的一个抓取指定网页的图片 第一次写 很乱 随便看看就行
public partial class Form1 : Form { /// <summary> /// 存放图片地址 /// </summary> List<stri ...
- C++学习书籍推荐《C++程序设计原理与实践》下载
百度云及其他网盘下载地址:点我 编辑推荐 <C++程序设计原理与实践>是经典程序设计思想与C++开发实践的完美结合,是C++之父回归校园后对C++编程原理和技巧的全新阐述.书中全面地介绍了 ...
- JavaScript-浏览器的三种弹窗方式
//BOM 弹窗 //同步 阻断 alert("alert弹窗"); //返回布尔值 (是/否) var bcf = confirm("confirm弹窗"); ...
- stixel_world+Multi_stioxel_world+semantic_stixel_world知识拓展
Semantic_Stixel_World 学习笔记 因项目方向更改,该研究暂停, 转为opengl等3D渲染. Author: Ian 星期四, 20. 六月 2019 06:11下午 最近看网络上 ...
- Linux 系统的基本操作及工具的使用
基本操作命令如:useradd.userdel.passwd.su 添加用户.删除用户.修改密码.切换用户 ls.ll.cd.cp.mv.chmod ps.kil.man mkdir.touch.ta ...
- android值类型转换
各种数字类型转换成字符串型: String s = String.valueOf( value); // 其中 value 为任意一种数字类型. 字符串型转换成各种数字类型: String s = & ...
- Python登录豆瓣并爬取影评
上一篇我们讲过Cookie相关的知识,了解到Cookie是为了交互式web而诞生的,它主要用于以下三个方面: 会话状态管理(如用户登录状态.购物车.游戏分数或其它需要记录的信息) 个性化设置(如用户自 ...
- python面向对象编程小程序- 选课系统
选课系统 花了一晚上写的,可能还存在不足 1.程序框架 2.文件夹建立 D:/选课系统 |___api | |___common_api.py |___bil | |___common.py |___ ...