語音標記範例 - Amazon Polly

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

語音標記範例

以下語音標記請求的範例顯示如何提出一般請求以及其所產生的輸出。

範例 1:沒有 SSML 的語音標記

下例介紹簡單句子的請求元數據:「Mary by a lamb.」 為簡單起見,我們在這個範例中不包含 SSML 語音標記。

以下 AWS CLI 範例格式適用於 Unix、Linux 和 macOS。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\),並以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\),並以插入號 (^) 取代。

aws polly synthesize-speech \ --output-format json \ --voice-id Joanna \ --text 'Mary had a little lamb.' \ --speech-mark-types='["viseme", "word", "sentence"]' \ MaryLamb.txt

當您提出此請求時,Amazon Polly 以 .txt 檔案傳回下列:

{"time":0,"type":"sentence","start":0,"end":23,"value":"Mary had a little lamb."} {"time":6,"type":"word","start":0,"end":4,"value":"Mary"} {"time":6,"type":"viseme","value":"p"} {"time":73,"type":"viseme","value":"E"} {"time":180,"type":"viseme","value":"r"} {"time":292,"type":"viseme","value":"i"} {"time":373,"type":"word","start":5,"end":8,"value":"had"} {"time":373,"type":"viseme","value":"k"} {"time":460,"type":"viseme","value":"a"} {"time":521,"type":"viseme","value":"t"} {"time":604,"type":"word","start":9,"end":10,"value":"a"} {"time":604,"type":"viseme","value":"@"} {"time":643,"type":"word","start":11,"end":17,"value":"little"} {"time":643,"type":"viseme","value":"t"} {"time":739,"type":"viseme","value":"i"} {"time":769,"type":"viseme","value":"t"} {"time":799,"type":"viseme","value":"t"} {"time":882,"type":"word","start":18,"end":22,"value":"lamb"} {"time":882,"type":"viseme","value":"t"} {"time":964,"type":"viseme","value":"a"} {"time":1082,"type":"viseme","value":"p"}

在這個輸出中,文字的每個部分是以語音標記分開:

  • 句子「Mary had a little lamb.」

  • 文本中的每個單詞:「Mary」、「曾」、「a」、「小」和「lamb.」

  • 對應的音訊串流中每個聲音的視素:「p」、「E」、「r」、「i」以此類推。如需有關視素的詳細資訊,請參閱視素和 Amazon Polly

範例 2:使用 SSML 的語音標記

從 SSML 增強文字產生語音標記的程序與沒有 SSML 的程序類似。使用 synthesize-speech 命令,並指定 SSML 增強的文字和語音標記的類型,如下例所示。為使用範例容易讀取,我們不包含視素語音標記,但這些是可以包含的。

以下 AWS CLI 範例格式適用於 Unix、Linux 和 macOS。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\),並以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\),並以插入號 (^) 取代。

aws polly synthesize-speech \ --output-format json \ --voice-id Joanna \ --text-type ssml \ --text '<speak><prosody volume="+20dB">Mary had <break time="300ms"/>a little <mark name="animal"/>lamb</prosody></speak>' \ --speech-mark-types='["sentence", "word", "ssml"]' \ output.txt

當您提出此請求時,Amazon Polly 以 .txt 檔案傳回下列:

{"time":0,"type":"sentence","start":31,"end":95,"value":"Mary had <break time=\"300ms\"\/>a little <mark name=\"animal\"\/>lamb"} {"time":6,"type":"word","start":31,"end":35,"value":"Mary"} {"time":325,"type":"word","start":36,"end":39,"value":"had"} {"time":897,"type":"word","start":40,"end":61,"value":"<break time=\"300ms\"\/>"} {"time":1291,"type":"word","start":61,"end":62,"value":"a"} {"time":1373,"type":"word","start":63,"end":69,"value":"little"} {"time":1635,"type":"ssml","start":70,"end":91,"value":"animal"} {"time":1635,"type":"word","start":91,"end":95,"value":"lamb"}