Amazon Polly
開発者ガイド

スピーチマークの例

スピーチマークの次の例では、共通リクエストの作成方法と、そのリクエストによって生成される出力を示します。

例 1: SSML を使用しないスピーチマーク

以下の例では、リクエストされたメタデータが、シンプルな文章「Mary had a little lamb.」で画面に表示される様子を示しています。 分かりやすいように、SSML のスピーチマークはこの例に含んでいません。

次の AWS CLI の例は、Unix、Linux、および macOS 用にフォーマットされています。Windows の場合、各行の末尾にあるバックスラッシュ (\) 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"、"had"、"a"、"little"、"lamb"

  • 対応する音声データストリームの各音のビゼームには、"p"、"E"、"r"、"i" などがあります。ビゼームの詳細については、「ビゼームと Amazon Polly」を参照してください。

例 2: SSML を使用したスピーチマーク

SSML 拡張テキストからスピーチマークを生成する手順は、SSML が存在しない場合のプロセスと同様です。synthesize-speech コマンドを使用して、次の例に示すように SSML 拡張テキスト、スピーチマークの種類を指定します。例を読みやすくするために、ビゼームのスピーチマークは含まれていませんが、実際には含まれる可能性があります。

次の AWS CLI の例は、Unix、Linux、および macOS 用にフォーマットされています。Windows の場合、各行の末尾にあるバックスラッシュ (\) 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"}