スピーチ(APL for Audio)
Speech
コンポーネントは、指定されたテキストをスピーチ音声出力に変換します。入力は、プレーンテキスト、SSMLのいずれかで指定できます。
プロパティ
Speech
コンポーネントには基本コンポーネントプロパティのほかに、コンポーネント固有の次のプロパティがあります。
プロパティ | 型 | デフォルト | 説明 |
---|---|---|---|
content |
文字列 | "" | スピーチ音声に変換するテキストコンテンツです。 |
contentType |
PlainText かSSML |
PlainText |
content プロパティで指定するコンテンツの種類です。 |
コンテンツ
テキストからスピーチ音声に変換するコンテンツです。content
には、任意のUTF-8文字列を指定できます。
Speech
コンポーネントのコンテンツに冒涜的な内容を含めることはできません。冒涜的な内容は、変換中にすべてビープ音に置き換えられます。
contentType
テキストからスピーチ音声に変換するコンテンツの種類を定義します。
タグ | 説明 |
---|---|
SSML |
オーディオエンジンは、テキストからスピーチ音声に変換する前に、content を検証してSSML構文を適用します。 |
PlainText |
オーディオエンジンは、content を標準テキストとしてスピーチ音声に変換します。 |
contentType
がSSMLで、content
で指定されたSSMLの構文が正しくない場合、オーディオエンジンはドキュメントをレンダリングできず、リクエストは失敗します。
content
プロパティにSSMLコンテンツを指定する場合、通常のoutputSpeech
応答と同様に、スピーチ音声を<speak>
タグで囲んでください。
SSMLはJSONオブジェクトで指定する必要があるため、引用符をエスケープするか、一重引用符と二重引用符を適宜組み合わせて使用してください。
サポートされているSSML構文のリファレンスやサポートされる機能については、音声合成マークアップ言語(SSML)のリファレンスを参照してください。
contentType
がPlainText
の場合、content
文字列内のSSMLコンテンツはすべてエンコードされます。この結果、Alexaは意図した動作ではなくSSMLタグをそのまま「読み上げて」しまいます。
例
プレーンテキストの例
以下は、「こんにちは、皆さん。」というテキストを読み上げるSpeech
コンポーネントの例です。
{
"type": "Speech",
"contentType": "PlainText",
"content": "こんにちは、皆さん。"
}
SSMLの例
以下は、SSMLを使ったSpeech
コンポーネントの例です。この例では、「こんにちは、皆さん。」というテキストを「ささやき声」のエフェクトで読み上げます。
{
"type": "Speech",
"contentType": "SSML",
"content": "<speak><amazon:effect name='whispered'>こんにちは、皆さん。</amazon:effect></speak>"
}
SSMLタグの詳細とその他の例については、音声合成マークアップ言語(SSML)のリファレンスを参照してください。
最終更新日: 2021 年 10 月 11 日