• <strike id="fdgpu"><input id="fdgpu"></input></strike>
    <label id="fdgpu"></label>
    <s id="fdgpu"><code id="fdgpu"></code></s>

  • <label id="fdgpu"></label>
  • <span id="fdgpu"><u id="fdgpu"></u></span>

    <s id="fdgpu"><sub id="fdgpu"></sub></s>
    您當前的位置是:  首頁(yè) > 新聞 > 國內 >
     首頁(yè) > 新聞 > 國內 >

    MRCP協(xié)議學(xué)習筆記-語(yǔ)音合成標記語(yǔ)言(SSML)-2

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


      在前一個(gè)章節中,筆者介紹了SSML標識語(yǔ)言的第一部分。現在我們將繼續介紹SSML標識語(yǔ)言的第二部分。此部分包括了讀音中的Prosody的語(yǔ)音語(yǔ)調設置參數(break,emphasis,讀音和控制參數 voume,speak rate, pitch),標記符和metadata。通過(guò)第二部分的介紹,結合第一部分的知識,筆者會(huì )給讀者提供一個(gè)非常完整的語(yǔ)音合成標記語(yǔ)言(SSML)的介紹。現在,我們將對第二部分的細節進(jìn)行逐一介紹。
      1、首先,讓我們簡(jiǎn)單說(shuō)明一下為什么要對標記語(yǔ)言進(jìn)行控制設置。演講是一門(mén)藝術(shù)。我們看到很多名人在觀(guān)眾面前侃侃而談。我們經(jīng)常看的TED節目就是非常出色的演講節目,TED節目中的演講內容也給我們留下來(lái)深刻的印象。除了內容本身和PPT吸引觀(guān)眾以外,演講嘉賓的語(yǔ)速語(yǔ)調也是非常重要的。演講嘉賓會(huì )知道什么時(shí)間強調什么內容,語(yǔ)速快慢,關(guān)鍵詞等也是非常重要的因素。因此,觀(guān)眾需要及時(shí)捕捉到演講嘉賓的語(yǔ)義才能正確理解嘉賓的準確含義。同樣的道理,語(yǔ)音識別引擎也需要能夠非常智能地識別讀音的不同,這樣才能保證識別出當時(shí)的場(chǎng)景和讀者的語(yǔ)氣和語(yǔ)義。
      在語(yǔ)音識別引擎的處理過(guò)程中,一個(gè)人說(shuō)話(huà)的語(yǔ)氣語(yǔ)調心情決定了內容的輸出結果,內容輸出結果會(huì )影響整個(gè)系統結果的判斷。Prosody(韻律結構)簡(jiǎn)單來(lái)說(shuō)就是控制語(yǔ)音的壓力模式和讀音語(yǔ)調。比如,某些人說(shuō)話(huà)時(shí)可能對某些重點(diǎn)詞語(yǔ)增加了強調作用,某些詞可能是語(yǔ)速非常快,或者音量非常高。這些參數的變化會(huì )導致完全不同的解析結果,因此能夠智能地判斷出這些相關(guān)參數是語(yǔ)音識別中非常重要的功能,也是對語(yǔ)音識別準確率極大挑戰。SSML提供了對語(yǔ)音語(yǔ)調的控制支持,它通過(guò)對語(yǔ)音控制的參數調整來(lái)對語(yǔ)氣,音量,語(yǔ)速或強調作用來(lái)控制輸出結果。
      2、在Prosody邊界參數設置中支持了幾個(gè)比較重要的要素標簽參數,通過(guò)這些參數可以對讀音進(jìn)行有效的控制,這些具體的參數包括:break,emphasis和voice。現在我們逐一介紹這些參數設置和其具體作用。
      SSML支持在詞語(yǔ)之間插入一個(gè)<break>來(lái)目前表示一個(gè)暫停或語(yǔ)義的邊界。當數據中沒(méi)有支持<break>時(shí),語(yǔ)音合成服務(wù)器將通過(guò)語(yǔ)言邏輯來(lái)實(shí)現暫停或打斷。<break>支持兩種屬性:time和strength(強度)。time屬性表示暫停的時(shí)長(cháng),以秒或毫秒為單位。strength則表示在輸出語(yǔ)音的暫停的語(yǔ)法強度。其支持的取值范圍包括:none,x-weak,weak,medium (默認值),strong或者x-strong。這里注意,time和strength都是可選屬性,如果缺少這兩個(gè)屬性設置,則表示語(yǔ)音合成服務(wù)器生成break。下面的示例表示暫停3秒以后繼續合成:
      < 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è)強調功能<emphasis>,它用來(lái)表示某些內容需要加以強調或加大語(yǔ)氣,用來(lái)突出其重要性。在我們的中文語(yǔ)境中,尤其是某些領(lǐng)導開(kāi)會(huì )的場(chǎng)合中表現尤為明顯,某些被強調的詞語(yǔ)更加需要注意。我們需要準確地了解講話(huà)者的內容,特別是強調的內容。<emphasis>的目的就是支持這個(gè)功能。當然,<emphasis>也可以結合pitch來(lái)實(shí)現更多的語(yǔ)義。<emphasis>僅支持一個(gè)屬性值的設置,其取值范圍包括:strong, moderate (默認設置),none和reduced。語(yǔ)法示例如下:
      < 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>用來(lái)表示在讀音中發(fā)出的請求修改讀音。<voice>支持五個(gè)屬性選項,分別是:xml:lang,gender,age,name和variant。xml:lang支持各種語(yǔ)言格式,gender支持男性,女性和中性;age表示讀音者的年齡;name可指定特別語(yǔ)音讀音者名稱(chēng);variant通過(guò)一個(gè)正整數表示內容中其他屬性推薦的設置。注意,如果語(yǔ)音合成服務(wù)器中通過(guò)<voice>可以完全匹配屬性設置的數據,則使用屬性設置的數據。如果不匹配的話(huà),則需要通過(guò)三個(gè)語(yǔ)法判斷的優(yōu)先級實(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、現在我們介紹一下Prosody的控制參數配置選項,它們分別是:volume,speaking rate 和 pitch。
      volume顧名思義,此選項來(lái)控制聲音的音量大小。他可以是一個(gè)數值,也可以是一個(gè)相對控制量,或者也可以是一個(gè)命名標識參數。其數值范圍可以是1-100之間;相對控制量通過(guò)數字前加+或-來(lái)調整其量;命名標識規范的取值為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(讀音速率)有速率和長(cháng)度來(lái)控制。rate可以通過(guò)相對數值定義或者命名標識來(lái)定義。相對數值可以通過(guò)+或-來(lái)調整其相對數量值。規范的命名標識值可以是x-slow,slow,medium,fast, x-fast或default。這里的默認的值是正常語(yǔ)速。
      < 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è)標識和取值范圍來(lái)表示。它帶有一個(gè)基音取值(base pitch)表示講話(huà)人語(yǔ)音的平均頻率。pitch取決于兩個(gè)標識符,一個(gè)是note,另外一個(gè)是note值。例如,我們通常所說(shuō)的A4紙,實(shí)際上A表示一個(gè)標識,4表示一個(gè)音頻值。如果是A2的話(huà),則表示范圍值為2(4-2)。其單位是Hertz (Hz)。每個(gè)標識(note)都對應一個(gè)振動(dòng)頻率值或一個(gè)周期(每秒)。同樣,在SSML屬性設置中,pitch也可以支持相對取值方式和標識方式。其相對取值設置是通過(guò)+或-然后加一個(gè)數字取值來(lái)定義,例如+4或70%。其標識取值可支持的標識為x-low, low,medium,high,x-high或default。其語(yǔ)法格式示例如下:
      < 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可以通過(guò)contour這個(gè)屬性來(lái)實(shí)現一些高級功能或高級控制方式,通過(guò)指定時(shí)間位置來(lái)分階段調整語(yǔ)音的屬性。通過(guò)(time-position, pitch-target)來(lái)加以定義區分。當然,這里的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è)標識符功能(marker),此功能可以通過(guò)<mark>元素添加到標識語(yǔ)言中。<mark>僅要求一個(gè)屬性name值,此值來(lái)設定一個(gè)標識符的名稱(chēng)。在MRCP協(xié)議中,當語(yǔ)音合成資源服務(wù)器輸出的已渲染的輸出語(yǔ)音數據遇到有標識符<mark>時(shí),服務(wù)器端會(huì )在Speech-Marker頭域中插入一個(gè)帶標識符名稱(chēng)的SPEECH-MARKER事件,然后把此事件發(fā)送到MRCP客戶(hù)端。當激活打斷功能以后,marker可以用來(lái)決定被渲染的語(yǔ)音數量。標識符消息也是非常有用的數據,它可以在數據內容中決定一些被播放的非常重要的語(yǔ)音或在內容中標識一個(gè)位置,這些位置上的語(yǔ)音可能需要稍晚重啟播放。
      < 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>是相對比較舊的格式,支持的語(yǔ)法格式比較簡(jiǎn)單,我們這里不做太多介紹。<metadata>則是一個(gè)比較新的格式,它可以支持更多標準的,功能強大的機制來(lái)設定metadata數據。在目前的版本中,SSML僅支持<metadata>的格式。<metadata>是一種容器的XML元素格式,容器元素中可以包含一個(gè)文件(XML),文件中包含數據信息內容。SSML技術(shù)細節推薦使用XML的RDF(Resource Description Framework)語(yǔ)法結合Dublin Core Metadata Initiative(定義標準metadata屬性)構成文件信息內容。Dublin Core Metadata Initiative提供標準的metadata屬性?xún)热荩缣ь^,標題和創(chuàng )建者信息等數據內容。以下示例是使用了RDF和Dublin Core Metadata Initiative來(lái)完成對XML語(yǔ)法數據構建:
      < 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、在本章節的分享中,我們重點(diǎn)介紹了Prosody中的break來(lái)支持詞語(yǔ)之間的邊界控制,我們還介紹了使用emphasis強調元素來(lái)對某些詞語(yǔ)進(jìn)行強調,同時(shí)我們還介紹了非常重要的vicoe元素,使用此屬性來(lái)設置播放性別,年齡,語(yǔ)言種類(lèi)等相關(guān)參數。另外,我們對Prosody中的控制參數做了詳細說(shuō)明以及其控制參數 voume,speak rate,pitch的使用方式。最后,筆者介紹了如何使用標記符對某些特定內容進(jìn)行標記,還有metadata中文件的格式和其數據構成進(jìn)行了介紹。通過(guò)Prosody中屬性參數的介紹,筆者已經(jīng)把語(yǔ)音合成標記語(yǔ)言的基本數據格式做了一個(gè)完整的介紹,為讀者起到了拋磚引玉的作用,也為未來(lái)其他章節的學(xué)習打下一個(gè)良好的基礎。
      參考資料: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é)習分享,QQ群號:208136295
      關(guān)注微信公眾號: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

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

    專(zhuān)題

    亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩 遂溪县| 平南县| 鄂尔多斯市| 乌海市| 武穴市| 保亭| 万安县| 巍山| 德化县| 海兴县| 南丰县| 安龙县| 洞头县| 深圳市| 云林县| 临漳县| 平阴县| 富顺县| 台东县| 日喀则市| 侯马市| 高雄市| 镇安县| 中西区| 屏边| 拉孜县| 平顶山市| 四平市| 鹤峰县| 鄢陵县| 易门县| 阿瓦提县| 滨海县| 桐乡市| 英山县| 内黄县| 平塘县| 宜章县| 上饶市| 忻州市| 志丹县| http://444 http://444 http://444 http://444 http://444 http://444