思ってることってこんなもんだよ
Conversations SSML and Audio "SSML"の日本語訳です

Googleアシスタント向けのアプリでは、基本的にユーザにはテキストから音声合成された結果を「聞かせる」ことになるのですが、時としてもっと異なるものを聞かせたくなることがあります。音声合成を細かく制御するために、またオーディオファイルの再生を指示するために、SSML(Speech Synthesis Markup Language)のサブセットを利用することができます。Actions on Googleの Conversations SSML and Audio - SSML にて、サポートされるSSMLの内容が説明されています。以下は、その日本語訳です。


SSML

Googleアシスタントへの返信を返すとき、あなたの回答に音声合成マークアップ言語(SSML)のサブセットを使用することができます。SSMLを使用することで、エージェントの応答をもっと生き生きとした感じにすることができます。以下は、SSMLマークアップの例と、それがGoogleアシスタントによってどのように読み取られるかを示しています。

マークアップ

<speak>
  Here are <say-as interpret-as="characters">SSML</say-as> samples.
  I can pause <break time="3s"/>.
  I can play a sound
  <audio src="https://www.example.com/MY_MP3_FILE.mp3">didn't get your MP3 audio file</audio>.
  I can speak in cardinals. Your number is <say-as interpret-as="cardinal">10</say-as>.
  Or I can speak in ordinals. You are <say-as interpret-as="ordinal">10</say-as> in line.
  Or I can even speak in digits. The digits for ten are <say-as interpret-as="characters">10</say-as>.
  I can also substitute phrases, like the <sub alias="World Wide Web Consortium">W3C</sub>.
  Finally, I can speak a paragraph with two sentences.
  <p><s>This is sentence one.</s><s>This is sentence two.</s></p>
</speak>
Here are S S M L samples. I can pause [3秒間停止]. I can play a sound [オーディオファイル再生].
I can speak in cardinals. Your number is ten.
Or I can speak in ordinals. You are tenth in line.
Or I can even speak in digits. The digits for ten are one oh.
I can also substitute phrases, like the World Wide Web Consortium.
Finally, I can speak a paragraph with two sentences. This is sentence one. This is sentence two.

SSMLの出力にクライアントライブラリを使用する方法については、SSMLリファレンスガイドを参照してください。注: SSMLはアクションシミュレータではサポートされていますが、Dialogflowシミュレータではサポートされていません。

サポートされるSSML要素

以下の表は、あなたが使用することができるSSML要素を説明しています。

要素 説明
<speak> SSMLレスポンスのルート要素。必須のxml:lang属性は、ルートドキュメントの言語を指定します。
以下は、<speak>要素の使用例です。
<speak>
  my SSML content
</speak>
より詳しい情報は、speak Elementを参照してください。
<break> 単語間の一時停止やその他の境界を制御する空の要素です。任意の単語のペアの間に<break&t;を使用することは、任意です。
以下の例は、2つの手順の間で一時停止する<break>要素の使用例です。
<speak>
  Step 1, take a deep breath. <break time="2s" />
  Step 2, exhale.
</speak>
より詳しい情報は、break Elementを参照してください。
<say-as> 要素内に含まれるテキスト構造の種別に関する情報を指定します。また、含まれているテキストのレンダリングの詳細レベルを指定するのに役立ちます。
<say-as>要素には、値の発声方法を決定する必須の属性である、interpret-asがあります。任意の属性のformatdetailは、特定のinterpret-as値に依存して使用されるかもしれません。interpret-as属性は、次の値をサポートします。
  • cardinal
    次の例は、"Twelve thousand three hundred forty five(アメリカ英語)" または "Twelve thousand three hundred and forty five(イギリス英語)" として発声されます。
    <speak>
      <say-as interpret-as="cardinal">12345</say-as>
    </speak>
  • ordinal
    次の例は、"First"として発声されます。
    <speak>
      <say-as interpret-as="ordinal">1</say-as>
    </speak>
  • ordinal
    次の例は、"see ay en"として発声されます。
    <speak>
      <say-as interpret-as="characters">can</say-as>
    </speak>
  • date
    次の例は、"September ten nineteen hundred sixty"として発声されます。
    <speak>
      <say-as interpret-as="date" format="ymd">1960-09-10</say-as>
    </speak>
    format属性は、日付フィールドの文字コードのシーケンスです。formatでサポートされているフィールド文字コードは、それぞれ年、月、(その月の)日の{ymd}です。フィールドコードが年、月、または日について1文字指定される場合、予想される桁数はそれぞれ4,2および2です。もしフィールドコードが繰り返される場合、期待される数字の桁は、コードが繰り返される回数になります。日付テキストのフィールドは、句読点やスペースで区切ることができます。
    detail属性は、日付の発声形式を制御します。detail='1'の場合、日フィールドと月フィールドまたは年フィールドのいずれか1つだけが必要ですが、両方とも提供されることもあります。これは、3つのフィールドすべてよりも少ない指定がされた場合のデフォルトです。発声形式は "The {順序の日} of {月}, {年}" です。
    以下の例は、"The tenth of September, nineteen sixty"と発声されます。
    <speak>
      <say-as interpret-as="date" format="yyyymmdd" detail="1">
        1960-09-10
      </say-as>
    </speak>
    次の例は、"The tenth of September"と発声されます。
    <speak>
      <say-as interpret-as="date" format="dm">10-9</say-as>
    </speak>
    detail='2'の場合は、日、月、年のフィールドが必要であり、3つのフィールドがすべて指定されている場合は、これがデフォルトです。発声形式は "{月} {日付序数}, {年}" です。
    以下の例は、"September tenth, nineteen sixty" と発声されます。
    <speak>
      <say-as interpret-as="date" format="dmy" detail="2">
        10-9-1960
      </say-as>
    </speak>
  • time
    次の例は、"Two thirty P.M."として発声されます。
    <speak>
      <say-as interpret-as="time" format="hms12">2:30pm</say-as>
    </speak>
    format属性は、時間フィールドの文字コードのシーケンスです。時、(その時の)分、(その分の)秒、タイムゾーン、12時間制、24時間制のフォーマットでサポートされているフィールド文字コードはそれぞれ {h, m, s, Z, 12, 24} です。時、分または秒のフィールドコードが1回指定される場合は、予想される数字の桁数はそれぞれ1,2および2です。フィールドコードが繰り返される場合、期待される数字の桁は、コードが繰り返される回数となります。時間テキストのフィールドは、句読点やスペースで区切ることができます。時、分、秒がformatで指定されていないか、桁が一致しない場合、フィールドはゼロ値として扱われます。デフォルトのformatは "hms12" です。
    detail属性は、時間の音声形式が12時間制か24時間制かを制御します。detail='1'の場合、またはdetailが省略されていて時刻の形式が24時間制の場合、音声形式は24時間制です。detail='2'の場合、またはdetailが省略されていて時刻の形式が12時間制の場合、音声形式は12時間制になります。
  • telephone
    See the interpret-as='telephone' description in the W3C SSML 1.0 say-as attribute values WG note. W3C SSML 1.0 say-as attribute valuse WG noteの中のinterpret-as='telephone'を参照ください。
より詳しい情報は、say-as Elementを参照してください。
<audio> 合成された音声出力と共に、記録されたオーディオファイルの挿入と他のオーディオフォーマットの挿入をサポートします。
以下は、現在サポートされているオーディオの設定です。
  • フォーマット: MP3 (MPEG v2)
    • 毎秒24Kサンプル
    • 毎秒24K〜96Kビット、固定レート
  • フォーマット: OggのOpus
    • 毎秒24Kサンプル(スーパーワイドバンド)
    • 毎秒24K〜96Kビット、固定レート
  • フォーマット: (廃止予定) WAV (RIFF)
    • PCM 16ビット符号付き、リトルエンディアン
    • 毎秒24Kサンプル
  • 全てのフォーマット向け:
    • シングルチャンネルが好ましいが、ステレオでも良い。
    • 最大持続時間は120秒。
    • ファイルサイズ制限は5MB。
    • ソースURLはHTTPSプロトコルが必須。
    • オーディオを取得する際のUserAgentは、"Google-Speech-Actions"。
以下の例は、src URLで格納された音を出力します。
<speak>
  <audio src="https://.../meow.mp3">
    a cat meowing
  </audio>
</speak>
<audio>要素の内容は任意であり、オーディオファイルを再生できない場合、または出力デバイスがオーディオをサポートしていない場合に使用されます。
The src URL must also be an https URL (Google Cloud Storage can host your audio files on an https URL). また、src URLは、https URLでなければなりません(Google Cloud Storageは、あなたのオーディオファイルをhttps URLでホストすることが可能です)。
より詳しい情報は、audio Elementsを参照ください。
<p>, <s> 文および段落の要素です。
<p><s>This is sentence one.</s><s>This is sentence two.</s></p>
より詳しい情報は、p and s Elementを参照してください。
<sub> alias属性値のテキストが、発音のために含まれているテキストに置き換えることを示します。
<sub alias="World Wide Web Consortium">W3C</sub>
より詳しい情報は、sub Elementを参照してください。

Creative Commons Attribution 3.0 License 原文

← Actions on Google開発者向けドキュメント 日本語訳インデックス