Actions on Google 平台除了支援 Actions on Google 標準 SSML 元素。
支援的 Beta 版 SSML 功能摘要:
<phoneme>
:自訂特定字詞的發音。<say-as interpret-as="duration">
:指定時間長度。<voice>
:在同一個要求中切換語音。<lang>
:在同一項要求中使用多種語言。- 時間點:使用
<mark>
標記傳回指定時間點 只出現在轉錄稿中。
<phoneme>
您可以使用 <phoneme>
標記來產生字詞的自訂發音
內嵌。Actions on Google 接受
IPA 和
X-SAMPA 拼音字母。詳情請參閱
電話訊息頁面,查看支援清單
包括語言和電話。
每次套用 <phoneme>
標記時,都會找出單一
字詞:
<phoneme alphabet="ipa" ph="ˌmænɪˈtoʊbə">manitoba</phoneme> <phoneme alphabet="x-sampa" ph='m@"hA:g@%ni:'>mahogany</phoneme>
壓力標記
語音轉錄可分為三種等級:
- 主要壓力:以 IPA 的
ˈ
和 X-SAMPA 的"
表示。 - 次要壓力:在 X-SAMPA 中以
ˌ
和%
表示。 - 無壓力:不是以符號表示 (無論是在標記法中)。
部分語言可能少於三個層級,或是表示沒有壓力的位置 。如果想瞭解詳細資訊,請參閱電話通訊頁面 各種語言提供的壓力程度壓力標記會放在 在每個壓力大旁開始。以英文 (美國) 為例:
範例字詞 | IPA | X-SAMPA |
---|---|---|
水 | ˈwɑːtɚ |
"wA:t@` |
水下 | ˌʌndɚˈwɑːtɚ |
%Vnd@"wA:t@ |
廣泛與精確語音轉錄內容
原則上,語音轉錄內容應盡量擴大涵蓋範圍,並盡量使用電話麥克風。
舉例來說,如果使用美式英文,請轉錄互譯 t
(而非使用
輕觸):
範例字詞 | IPA | X-SAMPA |
---|---|---|
奶油 | ˈbʌtɚ 取代 ˈbʌɾɚ |
"bVt@` 取代 "bV4@` |
在某些情況下,使用手機麥克風表示法會導致 TTS 結果聽起來不自然 (舉例來說,假設雜音連續 難以發音)
其中一個例子就是英文 s
的 Vvo 停用作業。在這種情況下
應該在語音轉錄內容中反映輔助動作:
範例字詞 | IPA | X-SAMPA |
---|---|---|
貓 | ˈkæts |
"k{ts |
狗 | ˈdɑːgz 取代 ˈdɑːgs |
"dA:gz 取代 "dA:gs |
縮小
每個音符必須包含一個 (且只能) 母音。這代表您應該 盡量避免含音符,而是以較低的母音進行轉錄。例如:
範例字詞 | IPA | X-SAMPA |
---|---|---|
小貓 | ˈkɪtən 取代 ˈkɪtn |
"kIt@n 取代 "kitn |
熱水壺 | ˈkɛtəl 取代 ˈkɛtl |
"kEt@l 取代 "kEtl |
符號化
您可以使用 .
指定可套用的界線。每個遊戲適用的元素都必須
只包含一個 (且只有一個) 母音。例如:
範例字詞 | IPA | X-SAMPA |
---|---|---|
可讀性 | ˌɹiː.də.ˈbɪ.lə.tiː |
%r\i:.d@."bI.l@.ti: |
時間長度
Actions on Google 平台能正確支援 <say-as interpret-as="duration">
讀取時間長度以下範例會讀出「five」
小時 30 分鐘」:
<say-as interpret-as="duration" format="h:m">5:30</say-as>
格式字串支援下列值:
縮寫 | 值 |
---|---|
小時 | 小時 |
公尺 | 分鐘 |
秒 | 秒 |
毫秒 | 毫秒 |
<voice>
<voice>
標記可讓您在單一 SSML 中使用多個語音。
請求。在以下範例中,預設語音為英文男性語音。
系統會在這段語音中合成所有字詞 (「qu'est-ce qui t'amène」除外)
「ici」會以法文朗讀,而非使用女性語音而非
預設語言 (英文) 和性別 (男性)。
<speak>And then she asked, <voice language="fr-FR" gender="female">qu'est-ce qui t'amène ici</voice><break time="250ms"/> in her sweet and gentle voice.</speak>
您也可以使用 <voice>
標記指定個別語音 (
聲音名稱
支援的語音和語言頁面)
而不用指定 language
和/或 gender
:
<speak>The dog is friendly<voice name="fr-CA-Wavenet-B">mais la chat est mignon</voice><break time="250ms"/> said a pet shop owner</speak>
使用 <voice>
標記時,Actions on Google 希望收到
name
(
你的聲音名稱
選項),或合併下列屬性。這三項
屬性為選填,但如果您沒有提供
name
。
gender
:male
、female
或neutral
其中之一。variant
:如果有多個片段,可用做仲裁器 每個語音的各種可能性language
:您想要的語言。一個語言中只能指定一種語言 已提供<voice>
標記。請以 BCP-47 格式指定語言。您可以 以您慣用語言的 BCP-47 代碼表示,方法是在語言代碼欄中 支援的語音和語言頁面。
您也可以控制 gender
、variant
、
和 language
屬性:required
和 ordering
。
required
:如果屬性指定為required
且未設定 就會導致要求失敗ordering
:系統會將ordering
標記後方列出的任何屬性視為 而非必要屬性SSML 會將 優先列出偏好的屬性ordering
標記後方。如果已經設定任何偏好屬性 Actions on Google 可能仍會傳回有效語音, 並捨棄不正確的設定
使用 required
和 ordering
標記的設定範例如下:
<speak>And there it was <voice language="en-GB" gender="male" required="gender" ordering="gender language">a flying bird </voice>roaring in the skies for the first time.</speak>
<speak>Today is supposed to be <voice language="en-GB" gender="female" ordering="language gender">Sunday Funday.</voice></speak>
<lang>
您可以使用 <lang>
,在同一個 SSML 內加入多種語言的文字
請求。除非您使用
<voice>
標記來明確變更語音。xml:lang
字串必須包含
目標語言,採用 BCP-47 格式 (這個值會在
支援的語音
表格)。在下方的「chat」範例中將以法文朗讀
預設語言 (英文):
<speak>The french word for cat is <lang xml:lang="fr-FR">chat</lang></speak>
Actions on Google 平台會盡可能支援 <lang>
標記。並非
針對以相同語言指定語言
SSML 要求在某些情況下,語言組合可能會產生
可以偵測,但輕微或視為負面。已知問題:
<lang>
標記不支援含有漢字字元的日文。 輸入的文字經過音譯,並以中文字元顯示- 系統不支援阿拉伯文、希伯來文和波斯文等半印度語言
<lang>
標記,且會造成靜音。如要使用上述任一 建議的語言:使用<voice>
標記切換至語音 說出所需語言 (如有)。