天天看點

MRCP協定-提供語音識别(ASR)與語音合成服務(TTS)

MRCP協定(媒體資源控制協定)

   媒體資源控制協定(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産品的網絡結構圖如下: 

MRCP協定-提供語音識别(ASR)與語音合成服務(TTS)

圖1. IMS2.0網絡結構圖 

  IMS2.0在功能上完全遵循MRCPv2 draft11的标準,目前支援對合成資源的通路,不遠的将來即會全面支援包括識别,聲紋認證等各個語音服務,同時它還提供了多種用戶端接口以友善內建開發,開發商甚至無需針對MRCPv2協定去開發,隻要調用友善的封裝接口即可實作語音服務功能,目前提供的用戶端接口包括MRCPv1用戶端接口、MRCPv2用戶端接口和傳統科大訊飛接口的用戶端,這樣無論是重新開發基于MRCP标準的應用還是直接将原有的應用移植到MRCP平台中都将是很輕松的事情。

  同時IMS2.0還具有它獨特的特色,包括在不與MRCP标準有沖突和額外需求的情況下透明支援大規模的負載均衡,可以友善的擴充更新語音服務能力;支援基于浏覽器的網絡管理功能,随時可以輕松管理所有的服務節點;而且還繼續保持着科大訊飛合成系統的高效性能和穩定的運作狀态。

繼續閱讀