中文字幕无码久久精品,13—14同岁无码A片,99热门精品一区二区三区无码,菠萝菠萝蜜在线观看视频高清1

您當(dāng)前的位置是:  首頁 > 新聞 > 國內(nèi) >
 首頁 > 新聞 > 國內(nèi) >

MRCP協(xié)議學(xué)習(xí)筆記-語音合成標(biāo)記語言(SSML)-2

2018-06-20 14:20:52   作者: james.zhu   來源:CTI論壇   評(píng)論:0  點(diǎn)擊:


  在前一個(gè)章節(jié)中,筆者介紹了SSML標(biāo)識(shí)語言的第一部分。現(xiàn)在我們將繼續(xù)介紹SSML標(biāo)識(shí)語言的第二部分。此部分包括了讀音中的Prosody的語音語調(diào)設(shè)置參數(shù)(break,emphasis,讀音和控制參數(shù) voume,speak rate, pitch),標(biāo)記符和metadata。通過第二部分的介紹,結(jié)合第一部分的知識(shí),筆者會(huì)給讀者提供一個(gè)非常完整的語音合成標(biāo)記語言(SSML)的介紹。現(xiàn)在,我們將對(duì)第二部分的細(xì)節(jié)進(jìn)行逐一介紹。
  1、首先,讓我們簡單說明一下為什么要對(duì)標(biāo)記語言進(jìn)行控制設(shè)置。演講是一門藝術(shù)。我們看到很多名人在觀眾面前侃侃而談。我們經(jīng)?吹腡ED節(jié)目就是非常出色的演講節(jié)目,TED節(jié)目中的演講內(nèi)容也給我們留下來深刻的印象。除了內(nèi)容本身和PPT吸引觀眾以外,演講嘉賓的語速語調(diào)也是非常重要的。演講嘉賓會(huì)知道什么時(shí)間強(qiáng)調(diào)什么內(nèi)容,語速快慢,關(guān)鍵詞等也是非常重要的因素。因此,觀眾需要及時(shí)捕捉到演講嘉賓的語義才能正確理解嘉賓的準(zhǔn)確含義。同樣的道理,語音識(shí)別引擎也需要能夠非常智能地識(shí)別讀音的不同,這樣才能保證識(shí)別出當(dāng)時(shí)的場景和讀者的語氣和語義。
  在語音識(shí)別引擎的處理過程中,一個(gè)人說話的語氣語調(diào)心情決定了內(nèi)容的輸出結(jié)果,內(nèi)容輸出結(jié)果會(huì)影響整個(gè)系統(tǒng)結(jié)果的判斷。Prosody(韻律結(jié)構(gòu))簡單來說就是控制語音的壓力模式和讀音語調(diào)。比如,某些人說話時(shí)可能對(duì)某些重點(diǎn)詞語增加了強(qiáng)調(diào)作用,某些詞可能是語速非?,或者音量非常高。這些參數(shù)的變化會(huì)導(dǎo)致完全不同的解析結(jié)果,因此能夠智能地判斷出這些相關(guān)參數(shù)是語音識(shí)別中非常重要的功能,也是對(duì)語音識(shí)別準(zhǔn)確率極大挑戰(zhàn)。SSML提供了對(duì)語音語調(diào)的控制支持,它通過對(duì)語音控制的參數(shù)調(diào)整來對(duì)語氣,音量,語速或強(qiáng)調(diào)作用來控制輸出結(jié)果。
  2、在Prosody邊界參數(shù)設(shè)置中支持了幾個(gè)比較重要的要素標(biāo)簽參數(shù),通過這些參數(shù)可以對(duì)讀音進(jìn)行有效的控制,這些具體的參數(shù)包括:break,emphasis和voice,F(xiàn)在我們逐一介紹這些參數(shù)設(shè)置和其具體作用。
  SSML支持在詞語之間插入一個(gè)<break>來目前表示一個(gè)暫停或語義的邊界。當(dāng)數(shù)據(jù)中沒有支持<break>時(shí),語音合成服務(wù)器將通過語言邏輯來實(shí)現(xiàn)暫;虼驍唷<break>支持兩種屬性:time和strength(強(qiáng)度)。time屬性表示暫停的時(shí)長,以秒或毫秒為單位。strength則表示在輸出語音的暫停的語法強(qiáng)度。其支持的取值范圍包括:none,x-weak,weak,medium (默認(rèn)值),strong或者x-strong。這里注意,time和strength都是可選屬性,如果缺少這兩個(gè)屬性設(shè)置,則表示語音合成服務(wù)器生成break。下面的示例表示暫停3秒以后繼續(xù)合成:
  < xml version="1.0" encoding="UTF-8" >
  <speak version="1.0"
  xmlns="http://www.w3.org/2001/10/synthesis"
  xml:lang="en-GB">
  Take a deep breath and count to three <break time="3s"/>
  Now we are ready to proceed.
  </speak>
  SSML同樣支持一個(gè)強(qiáng)調(diào)功能<emphasis>,它用來表示某些內(nèi)容需要加以強(qiáng)調(diào)或加大語氣,用來突出其重要性。在我們的中文語境中,尤其是某些領(lǐng)導(dǎo)開會(huì)的場合中表現(xiàn)尤為明顯,某些被強(qiáng)調(diào)的詞語更加需要注意。我們需要準(zhǔn)確地了解講話者的內(nèi)容,特別是強(qiáng)調(diào)的內(nèi)容。<emphasis>的目的就是支持這個(gè)功能。當(dāng)然,<emphasis>也可以結(jié)合pitch來實(shí)現(xiàn)更多的語義。<emphasis>僅支持一個(gè)屬性值的設(shè)置,其取值范圍包括:strong, moderate (默認(rèn)設(shè)置),none和reduced。語法示例如下:
  < xml version="1.0" encoding="UTF-8" >
  <speak version="1.0"
  xmlns="http://www.w3.org/2001/10/synthesis"
  xml:lang="en-GB">
  That is the <emphasis level="strong">right</emphasis> answer!
  </speak>
  SSML中的<voice>用來表示在讀音中發(fā)出的請(qǐng)求修改讀音。<voice>支持五個(gè)屬性選項(xiàng),分別是:xml:lang,gender,age,name和variant。xml:lang支持各種語言格式,gender支持男性,女性和中性;age表示讀音者的年齡;name可指定特別語音讀音者名稱;variant通過一個(gè)正整數(shù)表示內(nèi)容中其他屬性推薦的設(shè)置。注意,如果語音合成服務(wù)器中通過<voice>可以完全匹配屬性設(shè)置的數(shù)據(jù),則使用屬性設(shè)置的數(shù)據(jù)。如果不匹配的話,則需要通過三個(gè)語法判斷的優(yōu)先級(jí)實(shí)現(xiàn)匹配,具體設(shè)置條件可以參考MRCP v2。以下是一個(gè)<voice>示例:
  < xml version="1.0" encoding="UTF-8" >
  <speak version="1.0"
  xmlns="http://www.w3.org/2001/10/synthesis"
  xml:lang="en-GB">
  <voice gender="male">
  Welcome to online shopping for him
  </voice>
  <voice gender="female">
  and her!
  </voice>
  </speak>
  3、現(xiàn)在我們介紹一下Prosody的控制參數(shù)配置選項(xiàng),它們分別是:volume,speaking rate 和 pitch。
  volume顧名思義,此選項(xiàng)來控制聲音的音量大小。他可以是一個(gè)數(shù)值,也可以是一個(gè)相對(duì)控制量,或者也可以是一個(gè)命名標(biāo)識(shí)參數(shù)。其數(shù)值范圍可以是1-100之間;相對(duì)控制量通過數(shù)字前加+或-來調(diào)整其量;命名標(biāo)識(shí)規(guī)范的取值為silent, x-soft,soft,medium,loud,,x-loud或default。示例如下:
  < xml version="1.0" encoding="UTF-8" >
  <speak version="1.0"
  xmlns="http://www.w3.org/2001/10/synthesis"
  xml:lang="en-GB">
  Please consult our website for job vacancies.
  <prosody volume="soft">
  ACME is an equal-opportunities employer
  </prosody></speak>
  speaking rate(讀音速率)有速率和長度來控制。rate可以通過相對(duì)數(shù)值定義或者命名標(biāo)識(shí)來定義。相對(duì)數(shù)值可以通過+或-來調(diào)整其相對(duì)數(shù)量值。規(guī)范的命名標(biāo)識(shí)值可以是x-slow,slow,medium,fast, x-fast或default。這里的默認(rèn)的值是正常語速。
  < xml version="1.0" encoding="UTF-8" >
  <speak version="1.0"
  xmlns="http://www.w3.org/2001/10/synthesis"
  xml:lang="en-IE">
  Please select an option from the following.
  <prosody rate="-30%">
  Press 1 for sales or press 2 for support.
  </prosody>
  Otherwise hold the only line and a customer
  service representative will be with you shortly.
  </speak>
  pitch 通常的中文含義是音高。通常情況下,它使用一個(gè)標(biāo)識(shí)和取值范圍來表示。它帶有一個(gè)基音取值(base pitch)表示講話人語音的平均頻率。pitch取決于兩個(gè)標(biāo)識(shí)符,一個(gè)是note,另外一個(gè)是note值。例如,我們通常所說的A4紙,實(shí)際上A表示一個(gè)標(biāo)識(shí),4表示一個(gè)音頻值。如果是A2的話,則表示范圍值為2(4-2)。其單位是Hertz (Hz)。每個(gè)標(biāo)識(shí)(note)都對(duì)應(yīng)一個(gè)振動(dòng)頻率值或一個(gè)周期(每秒)。同樣,在SSML屬性設(shè)置中,pitch也可以支持相對(duì)取值方式和標(biāo)識(shí)方式。其相對(duì)取值設(shè)置是通過+或-然后加一個(gè)數(shù)字取值來定義,例如+4或70%。其標(biāo)識(shí)取值可支持的標(biāo)識(shí)為x-low, low,medium,high,x-high或default。其語法格式示例如下:
  < xml version="1.0" encoding="UTF-8" >
  <speak version="1.0"
  xmlns="http://www.w3.org/2001/10/synthesis"
  xml:lang="en-IE">
  <prosody pitch="x-high">
  When it hurts, I speak in a high-pitched voice!
  </prosody>
  </speak>
  pitch可以通過contour這個(gè)屬性來實(shí)現(xiàn)一些高級(jí)功能或高級(jí)控制方式,通過指定時(shí)間位置來分階段調(diào)整語音的屬性。通過(time-position, pitch-target)來加以定義區(qū)分。當(dāng)然,這里的time-position是從0%到100%。例如:
  < xml version="1.0" encoding="UTF-8" >
  <speak version="1.0"
  xmlns="http://www.w3.org/2001/10/synthesis"
  xml:lang="en-IE">
  <prosody contour="(0%,+10Hz) (50%,+50Hz) (100%,-50Hz)">
  Life is full of ups and downs.
  </prosody>
  </speak>
  4、SSMl支持一個(gè)標(biāo)識(shí)符功能(marker),此功能可以通過<mark>元素添加到標(biāo)識(shí)語言中。<mark>僅要求一個(gè)屬性name值,此值來設(shè)定一個(gè)標(biāo)識(shí)符的名稱。在MRCP協(xié)議中,當(dāng)語音合成資源服務(wù)器輸出的已渲染的輸出語音數(shù)據(jù)遇到有標(biāo)識(shí)符<mark>時(shí),服務(wù)器端會(huì)在Speech-Marker頭域中插入一個(gè)帶標(biāo)識(shí)符名稱的SPEECH-MARKER事件,然后把此事件發(fā)送到MRCP客戶端。當(dāng)激活打斷功能以后,marker可以用來決定被渲染的語音數(shù)量。標(biāo)識(shí)符消息也是非常有用的數(shù)據(jù),它可以在數(shù)據(jù)內(nèi)容中決定一些被播放的非常重要的語音或在內(nèi)容中標(biāo)識(shí)一個(gè)位置,這些位置上的語音可能需要稍晚重啟播放。
  < xml version="1.0" encoding="UTF-8" >
  <speak version="1.0"
  xmlns="http://www.w3.org/2001/10/synthesis"
  xml:lang="en-GB">
  <mark name="before-ad"/>
  <audio src="advertisement.wav"/>
  <mark name="after-ad"/>
  Please select from the following options.
  </speak>
  SSML可以支持兩種metadata容器元素,其支持的格式為:<meta> element 和<metadata>element。<meta>是相對(duì)比較舊的格式,支持的語法格式比較簡單,我們這里不做太多介紹。<metadata>則是一個(gè)比較新的格式,它可以支持更多標(biāo)準(zhǔn)的,功能強(qiáng)大的機(jī)制來設(shè)定metadata數(shù)據(jù)。在目前的版本中,SSML僅支持<metadata>的格式。<metadata>是一種容器的XML元素格式,容器元素中可以包含一個(gè)文件(XML),文件中包含數(shù)據(jù)信息內(nèi)容。SSML技術(shù)細(xì)節(jié)推薦使用XML的RDF(Resource Description Framework)語法結(jié)合Dublin Core Metadata Initiative(定義標(biāo)準(zhǔn)metadata屬性)構(gòu)成文件信息內(nèi)容。Dublin Core Metadata Initiative提供標(biāo)準(zhǔn)的metadata屬性內(nèi)容,例如抬頭,標(biāo)題和創(chuàng)建者信息等數(shù)據(jù)內(nèi)容。以下示例是使用了RDF和Dublin Core Metadata Initiative來完成對(duì)XML語法數(shù)據(jù)構(gòu)建:
  < xml version="1.0" encoding="UTF-8" >
  <speak version="1.0"
  xmlns="http://www.w3.org/2001/10/synthesis"
  xml:lang="en-GB">
  <metadata>
  <rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
  xmlns:dc="http://purl.org/dc/elements/1.1/">
  <rdf:Description
  rdf:about="http://www.example.com/meta.xml"
  dc:Title="Online banking welcome"
  dc:Description="Provides a welcome message"
  dc:Publisher="D Burke"
  dc:Language="en-US"
  dc:Date="2006-02-02"
  dc:Rights="Copyright (c) D Burke"
  dc:Format="application/ssml+xml" >
  <dc:Creator>
  <rdf:Seq ID="CreatorsAlphabeticalBySurname">
  <rdf:li>Dave Burke</rdf:li>
  </rdf:Seq>
  </dc:Creator>
  </rdf:Description>
  </rdf:RDF>
  </metadata>
  Welcome to online banking.
  </speak>
  5、在本章節(jié)的分享中,我們重點(diǎn)介紹了Prosody中的break來支持詞語之間的邊界控制,我們還介紹了使用emphasis強(qiáng)調(diào)元素來對(duì)某些詞語進(jìn)行強(qiáng)調(diào),同時(shí)我們還介紹了非常重要的vicoe元素,使用此屬性來設(shè)置播放性別,年齡,語言種類等相關(guān)參數(shù)。另外,我們對(duì)Prosody中的控制參數(shù)做了詳細(xì)說明以及其控制參數(shù) voume,speak rate,pitch的使用方式。最后,筆者介紹了如何使用標(biāo)記符對(duì)某些特定內(nèi)容進(jìn)行標(biāo)記,還有metadata中文件的格式和其數(shù)據(jù)構(gòu)成進(jìn)行了介紹。通過Prosody中屬性參數(shù)的介紹,筆者已經(jīng)把語音合成標(biāo)記語言的基本數(shù)據(jù)格式做了一個(gè)完整的介紹,為讀者起到了拋磚引玉的作用,也為未來其他章節(jié)的學(xué)習(xí)打下一個(gè)良好的基礎(chǔ)。
  參考資料:https://www.ibm.com/support/knowledgecenter/en/SSMQSV_6.1.1/com.ibm.voicetools.ssml.doc/ssml_pitch.html
  http://dublincore.org/specifications/
  https://en.wikipedia.org/wiki/Resource_Description_Framework
  AMY Isard: SSML: A Markup Language for Speech Synthesis
  WU Zhiyong:A Unified Framework for Multilingual Text-to-Speech Synthesis with SSML Specification as Interface    
        

  unimrcp-MRCP協(xié)議學(xué)習(xí)分享,QQ群號(hào):208136295
  關(guān)注微信公眾號(hào):asterisk-cn,獲得有價(jià)值的行業(yè)分享
  freepbx 技術(shù)論壇:www.ippbx.org.cn
  Asterisk, freepbx技術(shù)文檔: www.freepbx.org.cn
  歐米(Omni)智能客服解決方案
  融合通信商業(yè)解決方案,協(xié)同解決方案首選產(chǎn)品:www.hiastar.com

【免責(zé)聲明】本文僅代表作者本人觀點(diǎn),與CTI論壇無關(guān)。CTI論壇對(duì)文中陳述、觀點(diǎn)判斷保持中立,不對(duì)所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。請(qǐng)讀者僅作參考,并請(qǐng)自行承擔(dān)全部責(zé)任。

專題