DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML詳解 >> XML在語音合成中的應用
XML在語音合成中的應用
編輯:XML詳解     
互聯網以及和它相關的一切現在似乎隨處可見。您也許已經試過接到夜間電話推銷員的語音電話、又或者曾經接到過當地藥店給您的處方通知。現在,有一種新技術可以使用語音合成結合XML技術傳送語音信息了。


    以語音傳遞信息的手段並不是什麼新東西。它是我們幾千年來一直使用的交流方法。而且,從一台計算機那裡接收到電話也並非什麼新發明。許多語音技術到現在已經大行其道了,從傳真機、自動撥號器到集成語音回復系統(IVR)。電話當然是它最普遍的應用。

    傳統的語音系統使用預先錄制好的樣本、詞典和音素來創建我們所聽到的聲音。然而,使用這種預先錄制的手段有很多問題。其中最普遍的問題之一就是缺少連貫性和變化。如果只有一種錄制好的語音版本,其中每個單詞或者聲音都只有一個樣本,那麼很難讓計算機發出和普通陳述語句不同語調的疑問句。同樣困難的是讓計算機知道何時該用某種語調或者該用何種語調發音。

    為了幫助解決語音合成問題,W3C為語音合成標記語言(Speech Synthesis Markup Language)創建了一種新的工作草稿。這種新的XML詞匯表可以使語音浏覽器開發人員能夠控制一個語音合成器的創建方法。例如,開發者可以將命令包含進音量中,並在合成語音模式的時候使用它。

    SSML規范基於Sun公司早期的一項名為JSPeeck Markup Language(JSML)的研究工作。JSML則是基於Java Speech API Markup Language。現在SSML是W3C語音研究工作組的工作稿。

    SSML語言的基本目標是一個文本到語音(Text-To-Speech簡稱TTS)的處理器。一個TTS引擎獲得一個文本的集合並將它轉換為語音。現在已經有了幾種TTS應用程序了,例如電話語音合成回復系統,以及為盲人設計的更高級的系統等等。特定文本集合的發音本身固有的不確定性是現有TTS系統的所面臨的主要難題之一。其他普遍一點的問題集中在單詞簡寫(如Html)、拼寫和發音不同的單詞(如subpoena)等詞類的發音上。

    SSML語言的基礎元素指定了文本的格式。例如針對Html,SSML語言提供了一種段落元素而且走得更遠。因為它還提供了句子元素。通過像指定段落一樣指定句子的地址,包括起始地址和終止地址,TTS引擎就能更精確的生成語音。

    除了基本的格式,SSML還提供了功能來指定如何發某個預定的詞語或者詞語集合。這個功能由“say-as”元素來實現。它是SSML中一個非常有用的組件。它能讓你指定一個模板,這個模板描述如何發音某個單詞或者單詞集合。通過“say-as”,我們可以為縮寫的單詞指定如何發音,也可以為拼寫與發音不同的單詞指定發音。我們還可以列出數字和日期之間的區別。“say-as”元素包含了對email地址、貨幣和電話號碼等的支持。

    我們也可以對文本提供一種語音學上的表達方式。例如,我們可以通過這種手段來指出美式英語和英式英語對potato單詞發音的不同。

    SSML語言的幾個高級屬性可以幫助我們讓TTS系統生成更人性化的聲音。我們可以使用“voice”元素指定男聲、女聲或者中性的聲音,而且還可以指定聲音所屬的年齡。我們可以使用這個元素來指定從4歲的男孩到75歲的老婦之間的任何聲音。

    我們還可以使用“emphasis”元素環繞那些需要強調或者比較次要的文本。我們還可以使用“break”元素告訴系統語音在某處應該暫停。

    SSML語言最高級地特性之一體現在它地“prosody”元素上。通過它我們可以以某種指定地方式生成某個確定的文本集合的語音。我們可以指定聲音的語調、范圍、語速(單詞每分鐘)。我們甚至可以通過使用“contour”元素指定更細節的東西。“contour”元素把語調和語速集成在了一起。通過指定一個文本集合的“contour”元素值,我們可以更精確的定義如何生成語音。


XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved