MRCP 媒体资源控制协议

转载 2013年12月05日 15:52:52
媒体资源控制协议(Media Resource Control Protocol, MRCP)是一种通讯协议,用于语音服务器向客户端提供各种语音服务(如语音识别和语音合成)。
    MRCP并不定义会话连接,不关心服务器与客户端是如何连接的,MRCP的消息通常是承载于其它协议之上,如RTSP,SIP等。
  MRCP消息使用类似于HTTP等许多Internet协议一样的文本格式,每个消息包括三部分:首行,消息头,消息体。首行表明消息类型及返回码等信息。消息头包括了若干行内容,每一行都形如 "字段名:数值"。消息体包括了消息的详细内容,长度在消息头中指定。
  类似于HTTP,MRCP使用请求(通常由客户端发起)、响应模式。响应可以简单的确认请求,或者给出关于处理的其它信息。例如,MRCP客户端向服务端请求想要发送一些音频数据以进行处理(比如说语音识别),为此,服务端可以发送一个包含端口号的响应,因为MRCP并未定义音频数据的传输,所以,必须依靠其它的协议,比如说RTP来进行。
  有两个版本的MRCP协议,版本2使用SIP作为控制协议,版本1使用RTSP。
  [1]RFC4463: A Media Resource Control Protocol (MRCP)
1、  MRCP协议概述
     媒体资源控制协议(Media Resource Control Protocol,MRCP)是由Cisco、Nuance等公司联合开发的网络协议,该协议由IETF作为Internet草案发布(draft-shanmugham-mrcp-07)。该协议为那些需要进行语音处理的客户端提供了一种通过网络来控制媒体处理资源(如ASR、TTS引擎等)的机制。该协议在设计之初就考虑了可以在将来得到扩展以支持声纹鉴别和身份识别(Speaker Identification/Speaker Verification)等功能。 
     MRCP协议定义了控制媒体处理资源所必需的请求(Request)、应答(Response)和事件(Event)等消息。MRCP协议也为每一种资源定义了状态机,为每一个请求和服务器事件定义了所需的状态转换。MRCP关注的焦点在于控制那些进行媒体流处理的资源(如ASR、TTS),以及如何与这些资源之间进行通讯。 
     MRCP协议不能独立工作,它依赖于RTSP(Real Time Streaming Protocol)作为载体在客户端与服务器端之间建立会话连接。而语音媒体数据则通过RTP(Real Time Transport Protocol)协议连接传送给语音应用服务器。
    典型的基于MRCP的分布式语音应用系统采用C/S架构,由客户端发出媒体流处理请求,服务器端则利用媒体处理资源(ASR/TTS)来处理或生成媒体流,并将相应的处理结果返回给客户端。这样客户端就可以通过MRCP协议来通过网络分布式地控制服务器端的媒体处理资源。
    随着MRCP协议的不断推广与应用,各语音技术厂商在实践与部署过程中碰到了各种各样的问题。为此,IESG(The Internet Engineering Steering Group)于2002年特许成立了Speechsc工作组,专门负责起草更加完善高效的支持分布式语音资源处理的开放协议。在Speechsc工作组的努力下,改进后的MRCPv2(draft-ietf-speechsc-mrcpv2-09)很快应运而生了。MRCPv2的消息格式和资源状态机等都建立在MRCP协议版本1的基础之上,它完全兼容W3C的SSML、SRGS、NLSML标准。与MRCPv1不同的是MRCPv2消息不再依赖RTSP作为载体,而是作为独立的消息进行传输,但是它仍依赖于会话管理协议,如SIP(Session Initiation Protocol)协议,来在客户端与服务器端之间建立控制会话。 
 
2、  MRCP发展概况
     在传统的语音应用中,各集成商必须针对不同的ASR/TTS厂商提供的API接口进行专门的集成开发,不同ASR/TTS引擎的接口各不相同,从而导致了集成过程的复杂性和局限性。而利用MRCP协议提供的标准接口,语音集成开发商们不必再针对特定的ASR/TTS进行开发,而只需要提供统一的MRCP接口。利用这个特性,他们甚至可以在同一个应用系统中集成不同厂商的ASR/TTS引擎,譬如为了提供多语种语音合成服务,他们可以采用多个不同厂商的TTS。这样就为各种语音应用开发提供了更加灵活的选择,并有效地降低业务开发周期和成本。
    正是由于具有以上优势,MRCP协议在推出以后得到了国外各主流语音技术提供商的广泛支持。作为MRCP协议的合作起草者,Nuance和Cisco公司已经在多个语音应用解决方案中证明了该协议的效力。目前国外几乎所有的主流语音技术供应商都已经宣布推出基于MRCPv1的产品:
● 语音资源供应商:Acapela、BBN、IBM、Loquendo、Nuance(ScanSoft)、Rhetorical、Telisma等;
● 板卡技术供应商:Intel、NMS、Aculab等;
● 语音技术应用集成商:Cisco、Nortel、Lucent、HP、Edify、Genesys、Intervoice、SER、Unisys、Convedia等。 
    随着通信技术的进一步发展,下一代电信网络(NGN)将是以宽带IP、宽带无线网络、光网络、软交换为技术支撑,广泛结合CTI应用的融合网络,原有的电信网络将更加开放化,接口协议趋于标准化。SIP协议和RTP协议将逐步成为VoIP和软交换技术中承载会话控制和媒体传输的核心协议。而基于SIP和RTP协议设计的MRCPv2将会在分布式语音资源解决方案中逐步得到更大规模的应用。 
__________________________________________________________________________________________
 
科大讯飞推出MRCP语音服务器
 
 
  顺应语音应用的趋势,近日,科大讯飞公司推出了国内语音界首款MRCP服务器产品:iFLY MRCP Server 2.0(简称IMS2.0)。该产品基于最新的开放国际标准MRCPv2开发,为科大讯飞公司业界领先的InterPhonic语音合成产品家族提供了新的遵循开放标准的服务接口。这款产品的推出,对科大讯飞公司的新老客户,特别是应用开发商、集成商的意义重大,可以为用户带来很大的灵活性和可选择性,加快开发周期,降低开发成本。
 
什么是MRCP协议
  媒体资源控制协议(Media Resource Control Protocol, MRCP)是一项新兴的标准,用于管理和访问分布式系统架构上的语音资源服务器。该协议已经被语音通信领域的主流供应商所采用,如IBM、CISCO、Nuance、Loquendo、Telisma等,语音行业几乎所有的重要厂商都支持或承诺支持MRCP。
  采用MRCP协议后,独立软件商和应用开发商仅需面向MRCP接口撰写程序,而无需考虑不同语音厂商的语音引擎产品之间的差异,可以真正做到一次开发,多种环境下应用;任何支持MRCP标准的语音引擎都可以被无缝集成和调用。另外,MRCP也与其它新兴的技术兼容,如VoIP,VoiceXML和会话发起协议(Session Initiation Protocol,SIP)等,在电话交互系统等环境下的应用将更加直接方便。
IMS2.0产品
  科大讯飞公司长期以来一直着力于推动和研究语音技术和交互的公共开放标准,在MRCP标准日趋成熟的情况下,即根据最新的MRCPv2草案实现了新一代的语音服务平台。内部集成了科大讯飞的InterPhonic语音合成引擎,对外则按标准规范提供了访问接口,从之前的特定服务方式跨入到业界统一的服务方式,继续保持着语音行业发展的领先潮流。
  IMS2.0产品的网络结构图如下: 
 

图1. IMS2.0网络结构图 
  IMS2.0在功能上完全遵循MRCPv2 draft11的标准,目前支持对合成资源的访问,不远的将来即会全面支持包括识别,声纹认证等各个语音服务,同时它还提供了多种客户端接口以方便集成开发,开发商甚至无需针对MRCPv2协议去开发,只要调用方便的封装接口即可实现语音服务功能,目前提供的客户端接口包括MRCPv1客户端接口、MRCPv2客户端接口和传统科大讯飞接口的客户端,这样无论是重新开发基于MRCP标准的应用还是直接将原有的应用移植到MRCP平台中都将是很轻松的事情。
  同时IMS2.0还具有它独特的特色,包括在不与MRCP标准有冲突和额外需求的情况下透明支持大规模的负载均衡,可以方便的扩展升级语音服务能力;支持基于浏览器的网络管理功能,随时可以轻松管理所有的服务节点;而且还继续保持着科大讯飞合成系统的高效性能和稳定的运行状态。
 
主流的语音发展方向
  采用开放的标准对于企业和网络通信的成长是非常必要的。采纳MRCP,为广大的开发商群体增强了信心,不仅仅是简单地生产高质量的产品,更重要的是,为应用开发、集成商的创新提供了更大的灵活性和更多的机会。
  语音处理行业对标准化的需求促生了MRCP。MRCP是标准化组织IETF开发的协议标准。MRCP设计的特定目标很明确,就是为那些采用不同厂商的ASR和TTS产品来构建IVR或消息类应用的开发商提供便利。
  语音行业几乎所有的重要厂商都承诺支持MRCP。这样,开发商在选择每个语音处理构件时,都有很大的灵活性。这种灵活性甚至可扩展到在一个应用内,比如:为了包含多种语言的支持而采用多个ASR或TTS供应商。IMS2.0已经和一系列的语音产品集成测试过,包括: Nuance和Aculab。
  标准化的MRCP带来的益处在于:无需再为不同的或专用的语音产品提供不同的接口。这意味着集成不同语音厂商的语音技术时,可以显著地降低费用,并且确保新语音应用解决方案能快速进入市场。进一步而言,MRCP降低开发商的总拥有成本(TCO),也可以惠及最终用户,从而能在充满竞争的商业环境内确保利润。采用MRCP,在更新一个应用方案时,传统上所产生的额外费用和时间成本消失了。应用系统据此在选用不同的ASR/TTS时可以更加模块化,不必担心互操作的问题。
转载:http://blog.sina.com.cn/s/blog_4e8b57db0100pajh.html

相关文章推荐

API Hook的实现

API Hook的实现 一、序言对大多数的Windows开发者来说,如何在Win32系统中对API函数的调用进行拦截一直是项极富挑战性的课题,因为这将是对你所掌握的计算机知识较为全面的考验,尤其是一些...
  • f_jy
  • f_jy
  • 2007-06-28 17:15
  • 665

类和结构

类和结构实际上都是创建对象的模板,每个对象都包含数据,并提供了处理和访问数据的方法。类定义了每个类对象(称为实例)可以包含什么数据和功能。例如,如果一个类表示一个顾客,就可以定义字段CustomerI...

同一进程间的线程共享资源

线程共享的环境包括: 1.进程代码段  2.进程的公有数据(利用这些共享的数据,线程很容易的实现相互之间的通讯)  3.进程打开的文件描述符、信号的处理器、进程的当前目录和进程用户ID与进程组I...

页面回传与js调用服务器端事件

页面回传与js调用服务器端事件分类: .NET学习  |  标签:  __dopostback, 客户端调用服务器端事件     今天在网上查找了很多关于__doPostBack的资料,看了大半天,搞...

一个关于字符集处理的问题

背景:字符的存儲原理我們知道,在計算機內部,無論是字符還是數字,最終都是通過轉換成二進制數(也就是內碼)存儲在計算機中。字符集是一組字符的集合,它裡面包含了單個字符與其內碼(二進制值的一一對應關系。比...
  • truexf
  • truexf
  • 2007-06-28 17:57
  • 1014

在放任中成长

窗外的雨依旧淅淅沥沥,已不是那水中嬉戏的孩童,雨滴滴答答的落下,心灵却慢慢的升华。一直以来向往着怎样的生活,只觉的暴风雨洗礼后的城市格外的清洁,心情也蓦的爽朗了许多。是谁束缚住了谁的心灵,还是心灵原是...

gdb使用心得

1: 对于在应用程序中加入参数进行调试的方法:    直接用 gdb app -p1 -p2 这样进行调试是不行的。    需要像以下这样使用:     #gdb app     (gdb) r -p...

黑客网站

黑客基地 http://www.hackbase.com黑客动画吧 http://www.hack58.com/(黑软基地:http://www.hackvip.com/黑客地带 http://www...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)