スピーチ(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 日