從文本到語音

從文本到語音

人機對話的一部分
TTS是Text To Speech的縮寫,即“從文本到語音”,是人機對話的一部分,讓機器能夠說話。它是同時運用語言學和心理學的傑出之作,在内置芯片的支持之下,通過神經網絡的設計,把文字智能地轉化為自然語音流。TTS技術對文本文件進行實時轉換,轉換時間之短可以秒計算。在其特有智能語音控制器作用下,文本輸出的語音音律流暢,使得聽者在聽取信息時感覺自然,毫無機器語音輸出的冷漠與生澀感。TTS語音合成技術即将覆蓋國标一、二級漢字,具有英文接口,自動識别中、英文,支持中[1]英文混讀。所有聲音采用真人普通話為标準發音,實現了120-150個漢字/分鐘的快速語音合成,朗讀速度達3-4個漢字/秒,使用戶可以聽到清晰悅耳的音質和連貫流暢的語調。有少部分MP3随身聽具有了TTS功能。TTS是語音合成應用的一種,它将儲存于電腦中的文件,如幫助文件或者網頁,轉換成自然語音輸出。TTS不僅能幫助有視覺障礙的人閱讀計算機上的信息,更能增加文本文檔的可讀性。TTS應用包括語音驅動的郵件以及聲音敏感系統,并常與聲音識别程序一起使用。有很多TTS的産品,包括語音合成助手,PDF Markup Cloud,PDF大師,Read Please 2000, Proverbe Speech Unit,以及Next Up Technology的TextAloud。朗訊、 Elan、以及 AT&T都有自己的語音合成産品。
  • 中文名:從文本到語音
  • 外文名:TTS
  • 别名:
  • 全稱:Text To Speech
  • 含義:人機對話的一部分
  • 語種:支持多語:中文、英文、韓文等

TTS解析

TTS文語轉換用途很廣,包括電子郵件的閱讀、IVR系統的語音提示等等,IVR系統已廣泛應用于各個行業(如電信、交通運輸等)。

TTS所用的關鍵技術就是語音合成(SpeechSynthesis)。早期的TTS一般采用專用的芯片實現,如德州儀器公司的TMS50C10/TMS50C57、飛利浦的PH84H36等,但主要用在家用電器或兒童玩具中。

而基于微機應用的TTS一般用純軟件實現,主要包括以下幾部分:

●文本分析-對輸入文本進行語言學分析,逐句進行詞彙的、語法的和語義的分析,以确定句子的低層結構和每個字的音素的組成,包括文本的斷句、字詞切分、多音字的處理、數字的處理、縮略語的處理等。

●語音合成-把處理好的文本所對應的單字或短語從語音合成庫中提取,把語言學描述轉化成言語波形。

●韻律處理-合成音質(Qualityof Synthetic Speech)是指語音合成系統所輸出的語音的質量,一般從清晰度(或可懂度)、自然度和連貫性等方面進行主觀評價。清晰度是正确聽辨有意義詞語的百分率;自然度用來評價合成語音音質是否接近人說話的聲音,合成詞語的語調是否自然; 連貫性用來評價合成語句是否流暢。

要合成出高質量的語音,所采用的算法是極為複雜的,因此對機器的要求也非常高。算法的複雜度決定了微機并發進行多通道TTS的系統容量。

除了TTS軟件之外,很多商家還提供硬件産品,其中包括以色列WizCom Technologies公司的 Quick Link Pen,它是一個筆狀的可以掃描也可以閱讀文字的設備;還有Ostrich Software公司的Road Runner,一個手持的可以閱讀ASCII文本的設備;另外還有美國DEC公司的DecTalk TTS,它是可以替代聲卡的外部硬件設備,它包含一個内部軟件設備,可以與個人電腦自己的聲卡協同工作。

TTS在CTI的應用中的基本構架

在一般的CTI應用系統中,都會有IVR(交互式語音應答系統)。IVR系統是呼叫中心的重要組成部分,通過IVR系統,用戶可以利用音頻按健電話輸入信息,從系統中獲得預先錄制的數字或合成語音信息。具有TTS功能的IVR可以加快服務速度,節約服務成本,使IVR為呼叫者提供7*24小時的服務。

常見的IVR系統大都是通用的工控機平台上插入語音闆卡組成,并支持中文語音合成TTS等技術。

一個典型的包含TTS服務的電話服務流程可分為:

用戶電話撥入,系統IVR響應,獲得用戶按鍵等信息。

IVR根據用戶的按鍵信息,向數據庫服務器申請相關數據。

數據庫服務器返回文本數據給IVR。

IVR通過其TCP通訊接口,将需要合成的文本信息發送給TTS服務器。

TTS服務器将用戶文本合成的語音數據分段通過TCP通訊接口發送給IVR服務器。

IVR服務器把分段語音數據組裝成為獨立的語音文件。

IVR播放相應的語音文件給電話用戶。

一般的公網接入(IVR)大都采用工控機+語音闆卡,而合成的語音數據則通過局域網傳給IVR。這種結構隻适用于簡單的應用場合。

中文TTS系統

包括中文語音處理和語音合成,利用中文韻律等相關知識對中文語句進行分詞、詞性判斷、注音、數字符号轉換,語音合成通過查詢中文語音庫得到語音。中文TTS系統,比較著名的有:NUANCE,IBM,Microsoft,Fujitsu,科大訊飛,捷通華聲等研究的系統。比較關鍵的就是中文韻律處理、符号數字、多音字、構詞方面有較多的問題,需要不斷研究,使得中文語音合成的自然化程度較高。

TTS文本轉語音技術的應用案例(TTSUU文本轉語音軟件)

TTS文本轉語音技術已經逐漸成熟,市場上也出現了一些優秀的TTS軟件,例如支持手機端的PDF Markup Cloud 等,比較有代表性是一款叫做TTSUU (Text-to-Speech Universal Utility) 的國産文本朗讀軟件,這個軟件能朗讀和複讀幾乎任何語言的文本内容,具有20級音調變聲和20級語速調節能力,在朗讀時能根據文本中的标點符号自動判斷朗讀停頓,也允許用戶在文本的任意位置設置任意長的停頓時間,TTSUU軟件能把文本導出成Wav和MP3文件,同時能導出相應的LRC以及SMI同步歌詞字幕文件,還能錄音并輸出Wav和MP3文件。TTSUU軟件能夠通過切換語音引擎、重複朗讀、放慢或者加快朗讀速度、調高或者調低朗讀音調等功能幫助學生學習外語,提供包括中、英、日、韓、德、法、西、葡、俄等近30個語音引擎,發音标準,語氣感情色彩豐富,幾可亂真。TTSUU軟件允許您通過手工輸入、拷貝粘貼、打開TXT文本文件、Word文件以及PDF文件等方式對文本内容進行朗讀、導出音頻和字幕,您也可以從任何網頁、Email、電子文檔中拷貝任何文本内容,然後以随機彩色标簽的方式粘貼在主界面左右兩根柱子上供您随時編輯、閱讀、或者進行語音文件轉換,是工作、學習、聽小說,語音校對、語音廣告、音效素材制作等不可缺少的好幫手。

TTS與CTI

CTI技術使電信和計算機相互融合,克服了傳統電信和計算機服務相對單一的缺點,将兩者完美結合了起來。其應用領域非常廣泛,任何需要語音、數據通信,特别是那些希望把計算機網與通信網結合起來完成語音數據信息交換的系統都會用到CTI技術。

TTS即語音合成技術(Text To Speech),它涉及聲學、語言學、數學信号處理技術、多媒體技術等多個學科技術,是中文信息處理領域的一項前沿技術,實現把計算機中任意出現的文字轉換成自然流暢的語音輸出。

TTS在CTI系統中可以應用在IVR(交互式語音應答)服務器上,以提供語音交互式平台,為用戶電話來訪提供語音提示,引導用戶選擇服務内容和輸入電話事務所需的數據,并接受用戶在電話撥号鍵盤上輸入的信息,實現對計算機數據庫等信息資料的交互式訪問。

在IVR中應用TTS可以自動将文本信息轉換為語音文件,或者實時地将文本信息合成語音并通過電話發布。實現文本與語音自動雙向轉換,以達到人與系統的自動交互,随時随地為客戶服務。維護人員不必再人工錄音,隻須将電子文檔引入系統中,系統可以自動将電子文檔轉換為語音信息播放給客戶。數據庫中存放的大量數據,無需事先進行錄音,能夠随時根據查詢條件查出并合成語音進行播報,從而大大減少了座席人員的工作負擔。

那麼應如何将TTS功能附加到CTI應用中呢?某些比較先進的交換平台,已經在交換機的内部實現了TTS的功能,并作為标準接口的一部分對外提供,業務開發商隻需要簡單的調用他們即可以在業務中使用該功能。

對于未實現TTS功能的PBX,就需要業務開發商自己去選擇合适的平台,在此基礎上進行二次開發,即調用所選TTS平台提供的标準接口,實現語音合成功能。

CTI已經成為全球發展最為迅猛的産業之一,每年以50%的速度增長,CTI如同計算機産業一樣是一個金字塔形的産業鍊,從上到下會以至少20倍的幅度增值。TTS作為一種誘人的新技術,如果能很好的嵌入到增值業務的應用中去,必将形成一個更好的應用前景。

杭州音通軟件有限公司是由國家教育部和浙江省人民政府聯辦并依托浙江大學而成立的高新技術公司,音通公司主要緻力于計算機語音技術的研發并逐步開拓語音識别、語音流媒體傳輸等其它語音領域的研究。其核心技術(Intone_TTS)是具有自主知識産權的中文語音合成技術,在由浙江省科技廳組織的鑒定中被專家一緻鑒定為國内領先地位,并已申請多項國家專利。

Intone_TTS是一套把文本信息轉換為語音信息的開發工具包,為系統集成商、軟件開發商提供了完備的接口函數和編程示例,使用戶能夠靈活的進行調用,并集成到其它應用系統中。接口需要語音合成運行庫的支持,适合多種開發環境。開發者可以根據具體的應用場合進行選擇。

它能夠對所有的漢字、英文、阿拉伯數字進行語音合成;

支持繁體字及多音字的編輯;

合成效果:自然、平滑;

規範的函數調用接口,同時支持微軟SAPI的調用;支持同步調用和異步調用方式;

支持PCM Wave,uLaw/aLaw Wave,ADPCM,Dialogic Vox等多種語音格式;

支持GB2312碼(簡體中文)、BIG5碼(繁體)、UNICODE碼;

支持多路通道同時合成;

支持Dialogic、東進、三彙等主流語音闆卡;

TTS漫談

TTS就是Text To Speech,文本轉語音,文本朗讀,差不多是一個意思。在語音系統開發中經常要用到。

市場上的TTS很多,實現方式也各式各樣,有的很昂貴,如科大訊飛,據說當初得到863計劃的資助,有很高的技術;有的相對便宜,如捷通華聲, InfoTalk;也有免費的,如微軟的TTS産品。

相對于ASR(Automatic Speech Recognition,自動語音識别)來說,實現一個TTS産品所需要的技術難度不算大,在我看來也就是個力氣活。

要是讓我們來做一個能夠把漢語句子朗讀出來的TTS,我們會怎麼做呢?

有一種最簡單的TTS,就是把每個字都念出來,你會問,豈不要錄制6千多個漢字的語音?幸運的是,漢語的音節很少,很多同音字。我們最多隻是需要錄制: 聲母數×韻母數×4,(其實不是每個讀音都有4聲),這樣算來,最多隻需要錄制幾百個語音就可以了。

在合成的時候需要一張漢字對應拼音的對照表,漢字拼音輸入法也依賴這張表,可以在網上找到,不過通常沒有4聲音調,大不了自己加上,呵呵,要不怎麼說是力氣活呢。

這樣做出來的TTS效果也還可以,特别是朗讀一些沒有特别含義的如姓名,家庭住址,股票代碼等漢語句子,聽起來足夠清晰。這要歸功于我們偉大的母語通常都是單音節,從古代的時候開始,每個漢字就有一個詞,表達一個意思。而且漢字不同于英語,英語裡面很多連讀,音調節奏變化很大,漢字就簡單多了。

當然,你仍然要處理一些細節,比如多音字,把“銀行”讀成“yin xing”就不對了;再比如,标點符号的處理,數字、字母的處理,這些問題對于寫過很多程序的你,當然不難了。

國内的一些語音闆卡帶的TTS,不管是賣錢的還是免費的,大體都是這樣做出來的,也就是這樣的效果。

如果要把TTS的效果弄好一點,再來點力氣活,把基本的詞錄制成語音,如常見的兩字詞,四字成語等,再做個詞庫和語音庫的對照表,每次需要合成時到詞庫裡面找。這樣以詞為單位,比以字為單位,效果自然是好多了。當然,這裡面還是有個技術,就是分詞的技術,要把複雜的句子斷成合理的詞序列,也有點技術。這也要怪新文化那些先驅們,當初倡導白話文,引進西文的橫排格式、标點符号的時候,沒有引進西文中的空格分詞。不過即使分詞算法那麼不高效,不那麼準确,也問題不大,如前面所說,漢字是單音節詞,把聲音合起來,大體上不會有錯。

當然,科大訊飛的力氣活又幹的多了些,據說已經進化到以常用句子為單位來錄音了,大家可以想像,這要耗費更多的力氣,換來更好的效果。

至于增加一些銜接處的“詞料”,弄一些修飾性的音調,我認為是無關緊要的,對整體的效果改進不是太大。

市面上商品化TTS一般還支持粵語,請個粵語播音員錄音,把上面的力氣活重做一遍就是了。

再說句題外話,很多人覺得錄音最好找電台、電視台的播音員,其實找個你周圍的女同事來錄制,隻要吐字清晰就可以了。在某種情況下,尋常聲音比字正腔圓的新聞聯播來得可愛。

再來說說文本的标識,對于複雜文本,某些内容程序沒有辦法處理,需要标識出來。比如,單純的數字“128”,是應該念成“一百二十八”還是“一二八”?解決辦法通常是加入XML标注,如微軟的TTS:"128"念成“一百二十八”,"128"将念成“一二八”。TTS引擎可以去解釋這些标注。遺憾的是,語音XML标注并沒有形成大家都完全認可的标準,基本上是各自一套。

再說說TTS應用編程,微軟的TTS編程接口叫SAPI,是COM接口,開發起來還是有點麻煩,還好MSDN的網站上資料很全面。微軟的TTS雖然免費,但其中文角色是個男聲,聲音略嫌混濁,感覺不爽。

國内一般的廠家提供API調用接口,相對比較簡單,可以方便地嵌入應用程序中去。

商品化的TTS還有個并發許可限制,就是限制同時合成的并發線程數,我覺得這個限制用處不大。無論哪種TTS,都可以将文本文件轉換成語音文件,供語音卡播放。大部分應用句子比較短小,一般不會超過100個漢字,合成的時間是非常短的,弄個線程專門負責合成,其它應用向該線程請求就是了,萬一句子很長,把它分解成多個短句子就是了,播放的速度總是比合成的速度慢。

也很多應用是脫機合成,沒有實時性要求,就更不必買多個許可了。

更多情況下,我們甚至沒有必要購買TTS,比如語音開發中常見的費用催繳,撥通後播放:“尊敬的客戶,您本月的費用是:212元”,前面部分對所有客戶都一樣,錄一個語音文件就是了,而數字的合成是很簡單的,你隻要錄制好10個數字語音,再加上十,百,千,萬,再加上金錢的單位“元”。

相關詞條

相關搜索

其它詞條