

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 從 SSML 文件產生語音
<a name="ssml"></a>

您可以使用 Amazon Polly 從純文字或標有語音合成標記語言 (SSML) 的文件產生語音。使用 SSML 增強的文字可讓您進一步控制 Amazon Polly 如何從您提供的文字產生語音。

使用 SSML 標籤，您可以自訂和控制語音的各方面，例如發音、音量和語音速率。在 中 AWS 管理主控台，您要轉換為音訊的 SSML 增強文字會在Text-to-Speech頁面的 SSML 索引標籤上輸入。雖然以純文字輸入的文字依賴於您選擇的語言和語音的預設設定，但使用 SSML 增強的文字不僅會告訴 Amazon Polly 您想要說什麼，還會告訴 Amazon Polly 您想要如何說出它。除了新增的 SSML 標籤之外，Amazon Polly 會以與合成純文字相同的方式合成 SSML 增強的文字。如需詳細資訊，請參閱[使用 Amazon Polly 合成語音範例](synthesize-example.md)。

使用 SSML 時，您可以將整個文字括在`<speak>`標籤中，讓 Amazon Polly 知道您使用的是 SSML。例如：

```
<speak>Hi! My name is Joanna. I will read any text you type here.</speak>
```

然後，您使用特定的 SSML 標籤針對 `<speak>` 標籤內部文字來自訂說出文字的方式。您可以增加說話停頓點，改變更說話節奏、降低或提高音量，或新增其他許多自訂方式，讓文字說出的聲音完全符合您。如需您可使用的完整 SSML 標籤清單，請參閱[支援的 SSML 標籤](supportedtags.md)。

例如，您可以在文字內加入長時間停頓，或變更語音速度或音調。其他選項包括：
+ 強調特定字詞或片語
+ 使用音標發音
+ 包括呼吸聲
+ 輕聲低語
+ 使用新聞播報員的說話風格。

如需 Amazon Polly 支援的 SSML 標籤及其使用方式的完整詳細資訊，請參閱 [支援的 SSML 標籤](supportedtags.md)

使用 SSML 時，有幾個保留字元需要特殊處理。這是因為 SSML 使用這些字元做為其程式碼的一部分。為了使用它們，您可以使用特定實體來*逸出*它們。如需詳細資訊，請參閱[SSML 中的預留字元](escapees.md)

Amazon Polly 為這些類型的控制項提供[語音合成標記語言 (SSML) 1.1 版 W3C 建議所定義的 SSML 標記](https://www.w3.org/TR/2010/REC-speech-synthesis11-20100907/)標籤子集。

您可以在 Amazon Polly 主控台中使用 SSML，或使用 AWS CLI。下列主題示範如何使用 SSML 產生語音和控制輸出，讓它完全符合您的需求。

**Topics**
+ [SSML 中的預留字元](escapees.md)
+ [在主控台上使用 SSML](ssml-to-speech-console.md)
+ [搭配 Synthesize-Speech 命令使用 SSML](example-ssml-synthesize-speech-cli.md)
+ [合成 SSML 增強文件](example-ssml-synthesize-document.md)
+ [支援的 SSML 標籤](supportedtags.md)

# SSML 中的預留字元
<a name="escapees"></a>

有五個預先定義的字元不能在 SSML 陳述式中正常使用。這些實體由語言規格保留。這些字元如下所示：


| 名稱 | 字元 | 逸出程式碼 | 
| --- | --- | --- | 
| 引號 (雙引號) | " | &quot; | 
| ＆ 符號 | & | &amp; | 
| 單引號 | ' | &apos; | 
| 小於符號 | < | &lt; | 
| 大於符號 | > | &gt; | 

由於 SSML 使用這些字元做為其程式碼的一部分，若要在 SSML 中使用這些符號，您必須在使用時*逸出*該字元。您使用逸出碼而非實際字元，因此它可以正確顯示並且仍建立有效的 SSML 文件。例如，以下句子

```
We're using the lawyer at Peabody & Chambers, attorneys-at-law.
```

將在 SSML 轉譯為 

```
<speak>
We&apos;re using the lawyer at Peabody &amp; Chambers, attorneys-at-law.
</speak>
```

在此情況下，單引號和 & 符號的特殊字元會逸出，因此 SSML 文件仍然有效。

對於 **&** 、**<** 和 **>** 符號，當您使用 SSML 時，一律需要逸出碼。此外，當您使用單引號 (**'**) 做為單引號時，也必須使用逸出碼。

不過，當您使用雙引號 (**"**) 或單引號 (**'**) 做為引號時，是否使用逸出碼將取決於內容。

雙引號 
+ 在以雙引號分隔的屬性值中，必須逸出。例如，在以下 AWS CLI 程式碼中 

  ```
  --text "Pete &quot;Maverick&quot; Mitchell"
  ```
+ 在文字內容中不需要逸出。例如，在下列中

  ```
  He said, "Turn right at the corner."
  ```
+ 使用單引號分隔的屬性值時，不需要逸出。例如，在以下 AWS CLI 程式碼中 

  ```
  --text 'Pete "Maverick" Mitchell'
  ```

單引號 
+ 當用作單引號時，必須逸出。例如，在下列中 

  ```
  We&apos;ve got to leave quickly.
  ```
+ 在文字內容中不需要逸出。例如，在下列中

  ```
  "And then I said, 'Don't quote me.'"
  ```
+ 在以雙引號分隔的程式碼屬性中，不需要逸出。例如，在以下 AWS CLI 程式碼中 

  ```
  --text "Pete 'Maverick' Mitchell"
  ```

# 在主控台上使用 SSML
<a name="ssml-to-speech-console"></a>

在下列範例中，您會使用 SSML 標籤，指示 Amazon Polly 在說出簡短段落時，將「全球資訊網協會」取代為「W3C」。您也可以使用標籤來引進停頓和輕聲低語。比較本練習的結果和[套用語彙 （合成語音）](managing-lexicons-console-synthesize-speech.md)

如需包含範例的 SSML 的詳細資訊，請參閱[支援的 SSML 標籤](supportedtags.md)。

**若要從 SSML 增強文字合成語音 (主控台)**



1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/polly/](https://console.aws.amazon.com/polly/) 的 Amazon Polly 主控台。

1. 如果尚未顯示，請選擇 **Text-to-Speech (文字轉語音)** 標籤。

1. 開啟 **SSML**。

1. 請在文字方塊中輸入或貼上下列文字：

   ```
   <speak>
        He was caught up in the game.<break time="1s"/> In the middle of the 
        10/3/2014 <sub alias="World Wide Web Consortium">W3C</sub> meeting, 
        he shouted, "Nice job!" quite loudly. When his boss stared at him, he repeated 
        <amazon:effect name="whispered">"Nice job,"</amazon:effect> in a 
        whisper.
   </speak>
   ```

   SSML 標籤會告知 Amazon Polly 如何轉譯文字：
   + `<break time="1s"/>` 指示 Amazon Polly 在前兩個句子之間暫停 1 秒。
   + `<sub alias="World Wide Web Consortium">W3C</sub>` 指示 Amazon Polly 將 World Wide Web Consortium 取代為縮寫 W3C。
   + `<amazon:effect name="whispered">Nice job</amazon:effect>` 告知 Amazon Polly 低語說出「良好任務」的第二個執行個體。
**注意**  
當您使用 時 AWS CLI，請以引號括住輸入文字，以區分輸入文字與周圍的程式碼。Amazon Polly 主控台不會顯示程式碼，因此您在使用時不會將輸入文字括在引號中。

1. 針對**語言**，選擇**英文、美國**，然後選擇語音。

1. 若要接聽語音，請選擇**接聽**。

1. 若要儲存語音檔案，請選擇**下載**。如果您想要以不同的格式儲存，請展開**其他設定**，開啟**語音檔案格式設定**，然後選擇所需的格式，然後選擇**下載**。

# 搭配 Synthesize-Speech 命令使用 SSML
<a name="example-ssml-synthesize-speech-cli"></a>

此範例說明如何使用 `synthesize-speech` 命令搭配 SSML 字串。使用 `synthesize-speech` 命令時，通常會提供下列項目：
+ 輸入文字 (必要) 
+ 開頭和結尾標籤 (必要)
+ 輸出格式
+ 語音 

在這個範例中，您將在引號中指定一個簡單的文字字串，以及所需的開頭和結尾 `<speak></speak>` 標籤。

**重要**  
雖然您不要在 Amazon Polly 主控台的輸入文字周圍使用引號，但您必須使用 中的 AWS CLI 引號。也請務必區分輸入文字周圍的引號和個別標籤所需的引號。  
例如，您可以使用標準引號 (") 括住輸入文字，並使用單引號 (') 括住內部標籤，或者反過來。兩種選項都適用於 Unix、Linux 和 macOS。不過，在 Windows 中，您必須使用標準引號括住輸入文字，以及使用單引號括住標籤。  
對於所有作業系統，您可以使用標準引號 (") 括住輸入文字，並使用單引號 (') 括住內部標籤。例如：  

```
--text "<speak>Hello <break time='300ms'/> World</speak>"
```
  
對於 Unix、Linux 和 macOS，您也可以採用相反方式，亦即使用單引號 (') 括住輸入文字、使用標準引號 (") 括住內部標籤：  

```
--text '<speak>Hello <break time="300ms"/> World</speak>'
```


下列 AWS CLI 範例已針對 Unix、Linux 和 macOS 格式化。對於 Windows，將每一行尾端的反斜線 (\$1) Unix 接續字元取代為插入符號 (^)，並在輸入文字周圍使用完整引號 (") 取代內部標籤的單引號 (')。

```
aws polly synthesize-speech \
--text-type ssml \
--text '<speak>Hello world</speak>' \
--output-format mp3 \
--voice-id Joanna \
speech.mp3
```

若要聆聽合成語音，請使用任何音訊播放器來播放產生的 `speech.mp3` 檔案。

# 合成 SSML 增強文件
<a name="example-ssml-synthesize-document"></a>

對於較長的輸入文字，比較輕鬆的方法是將 SSML 內容儲存到檔案，然後在 `synthesize-speech` 命令中指定檔案名稱。例如，您可以將以下內容儲存至名為 `example.xml` 的檔案：

```
<?xml version="1.0"?>
<speak version="1.1" 
       xmlns="http://www.w3.org/2001/10/synthesis"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
       xsi:schemaLocation="http://www.w3.org/2001/10/synthesis http://www.w3.org/TR/speech-synthesis11/synthesis.xsd"
       xml:lang="en-US">Hello World</speak>
```

`xml:lang` 屬性將 `en-US` (美式英文) 指定為輸入文字的語言。如需輸入文字的語言和所選聲音的語言如何影響 `SynthesizeSpeech` 操作的相關資訊，請參閱[為特定單字指定另一種語言](lang-tag.md)。

**若要執行 SSML 增強的檔案**

1. 將 SSML 儲存到檔案 (例如 `example.xml`)。

1. 從 XML 檔案的存放路徑，執行下列 `synthesize-speech` 指令，並將輸入的文字換成 `file:\\example.xml`，來將 SSML 檔案指定為輸入項目。因為這個命令會指向檔案，而非包含實際的輸入文字，因此無使用需引號
**注意**  
下列 AWS CLI 範例已針對 Unix、Linux 和 macOS 格式化。用於 Windows 時，請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\$1)。

   ```
   aws polly synthesize-speech \
   --text-type ssml \
   --text file://example.xml \
   --output-format mp3 \
   --voice-id Joanna \
   speech.mp3
   ```

1. 若要聆聽合成語音，請使用任何音訊播放器來播放產生的 `speech.mp3` 檔案。

# 支援的 SSML 標籤
<a name="supportedtags"></a>

標準語音`<amazon:domain name="news">`支援 以外的所有標籤。下表提供其他語音的標籤可用性。

Amazon Polly 支援下列 SSML 標籤：


| Action | SSML 標籤 | 神經語音可用性 | 長格式語音可用性 | 生成式語音可用性 | 
| --- | --- | --- | --- | --- | 
|  [新增暫停](break-tag.md)  |  <break>  |  完整可用性  |  完整可用性  |  完整可用性  | 
|  [強調單字](emphasis-tag.md)  | <emphasis> |  不適用  |  不適用  |  不適用  | 
|  [為特定單字指定另一種語言](lang-tag.md)  | <lang> |  完整可用性  |  完整可用性  |  完整可用性  | 
|  [在文字中放置自訂標籤](custom-tag.md)  | <mark> |  完整可用性  |  完整可用性  |  部分可用性  | 
|  [在段落之間新增暫停](p-tag.md)  |  <p>  |  完整可用性  |  完整可用性  |  完整可用性  | 
|  [使用音標發音](phoneme-tag.md)  |  <phoneme>  |  完整可用性  |  完整可用性  |  部分可用性  | 
|  [控制音量、說話速率和音調](prosody-tag.md)  |  <prosody>  |  部分可用性  |  部分可用性  |  部分可用性  | 
|  [設定合成語音的最長持續時間](maxduration-tag.md)  |  <prosody amazon:max-duration>  |  不適用  |  不適用  |  不適用  | 
|  [在句子之間新增暫停](s-tag.md)  |  <s>  |  完整可用性  |  完整可用性  |  完整可用性  | 
|  [控制如何說出特殊類型的單字](say-as-tag.md)  |  <say-as>  |  部分可用性  |  完整可用性  |  完整可用性  | 
|  [識別 SSML 增強的文字](speak-tag.md)  |  <speak>  |  完整可用性  |  完整可用性  |  完整可用性  | 
|  [發音縮寫和縮寫](sub-tag.md)  |  <sub>  |  完整可用性  |  完整可用性  |  完整可用性  | 
|  [透過指定語音部分來改善發音](w-tag.md)  |  <w>  |  完整可用性  |  完整可用性  |  完整可用性  | 
|  [新增呼吸聲](breath-tag.md)  |  <amazon:auto-breaths>  |  不適用  |  不適用  |  不適用  | 
|  [新聞播報員說話風格](newscaster-tag.md)  | <amazon:domain name="news"> |  僅選取神經語音  |  不適用  |  不適用  | 
|  [新增動態範圍壓縮](drc-tag.md)  |  <amazon:effect name="drc">  |  完整可用性  |  完整可用性  |  不適用  | 
|  [柔和地說話](phonation-tag.md)  |  <amazon:effect phonation="soft">  |  不適用  |  不適用  |  不適用  | 
|  [控制潮汐](vocaltractlength-tag.md)  |  <amazon:effect vocal-tract-length>  |  不適用  |  不適用  |  不適用  | 
|  [輕聲低語](whispered-tag.md)  |  <amazon:effect name="whispered">  |  不適用  |  不適用  |  不適用  | 

**注意**  
如果您以標準、神經或長格式使用不支援的 SSML 標籤，您會收到錯誤。

# 識別 SSML 增強的文字
<a name="speak-tag"></a>

*<speak>*

生成式、長格式、神經和標準 TTS 格式支援此標籤。

`<speak>` 標籤是所有 Amazon Polly SSML 文字的根元素。所有 SSML 增強文字必須包含在一組 <speak> 標籤中。

```
<speak>Mary had a little lamb.</speak>
```



# 新增暫停
<a name="break-tag"></a>

*<break>*

生成式、長格式、神經和標準 TTS 格式支援此標籤。

若要在文字中加入停頓，請使用 <break> 標籤。您可以根據強度設定停頓 (等同於逗號、句子或段落後的停頓)，或者您可以將它設定為以秒或毫秒計算的特定時間長度。如果您未指定屬性來判斷暫停長度，Amazon Polly 會使用預設值 ，也就是 `<break strength="medium"/>`，這會在逗號之後新增暫停長度。

`strength` 屬性值：
+ `none`：無停頓。使用 `none` 可移除正常發生的停頓，例如在句點之後的停頓。
+ `x-weak`：具有 `none` 相同的強度，無停頓。
+ `weak`：設定和逗號後的停頓相同持續時間的停頓。
+ `medium`：具有 `weak` 相同的強度。
+ `strong`：設定和句子後的停頓相同持續時間的停頓。
+ `x-strong`：設定和段落後的停頓相同持續時間的停頓。

`time` 屬性值：
+ `[number]s`：停頓期間，以秒為單位。最大期間為 `10s`。
+ `[number]ms`：停頓期間，以毫秒為單位。最大期間為 `10000ms`。

例如：

```
<speak>
     Mary had a little lamb <break time="3s"/>Whose fleece was white as snow.
</speak>
```



如果未搭配 `break` 標籤來使用屬性，結果會因文字內容而有所不同：
+ 如果 `break` 標籤旁沒有其他標點符號，該標籤會建立 `<break strength="medium"/>` (逗號長度停頓)。
+ 如果標籤旁邊有逗號，會將標籤升級為 `<break strength="strong"/>` (句子長度停頓)。
+ 如果標籤旁邊有句點，會將標籤升級為 `<break strength="x-strong"/>` (段落長度停頓)。

**注意**  
目前`<break time=>`部分適用於生成式語音。 `<break>`和 `<break strength=>` 完全支援生成式語音。



# 強調單字
<a name="emphasis-tag"></a>

*<emphasis>*

只有標準 TTS 格式才支援此標籤。

若要強調文字，請使用 <emphasis> 標籤。強調文字會變更語音速度和音量。越強調，Amazon Polly 會更大聲和更慢地說出文字。強調程度越小，則會更安靜、更迅速說出。若要指定強調程度，請使用 `level` 屬性。

`level` 屬性值：
+ `Strong`：提高音量並減慢說話的速度，讓語音更大聲、更緩慢。
+ `Moderate`：提高音量並減慢說話的速度，但幅度比 `strong` 還小。`Moderate` 是預設值。
+ `Reduced`：降低音量並加快說話的速度。語音更輕柔、更快速。

**注意**  
聲音的正常講話速度和音量落在 `moderate` 和 `reduced` 等級之間。

例如：

```
<speak>I already told you I <emphasis level="strong">really like</emphasis> that person.</speak>
```



# 為特定單字指定另一種語言
<a name="lang-tag"></a>

*<lang>*

生成式、長格式、神經和標準 TTS 格式支援此標籤。對於生成語音，`<lang>`標籤只能圍繞完整句子使用。

使用 <lang> 標籤可指定特定文字、片語或句子的其他語言。外國語言文字和片語以一組 `<lang>` 標籤括住時，語音轉譯的表現一般都會比較好。若要指定語言，請使用 `xml:lang` 屬性。如需可用語言的完整清單，請參閱[Amazon Polly 中的語言](supported-languages.md)。

 除非套用 `<lang>` 標籤，否則輸入文字中的所有字詞，都會以 `voice-id` 指定的語音語言說出。如果您套用 `<lang>` 標籤，文字會以該語言說出。



例如，如果 `voice-id`是 Joanna （說美式英文），Amazon Polly 會以不含法文重音的 Joanna 語音說出以下內容：

```
<speak>
     Je ne parle pas français.
</speak>
```



如果您使用 Joanna 語音搭配 `<lang>`標籤，Amazon Polly 會以美式法文的 Joanna 語音說出句子：

```
<speak>
     <lang xml:lang="fr-FR">Je ne parle pas français.</lang>.
</speak>
```



由於 Joanna 不是以法文為母語，發音會以其母語語言 (美式英文) 為主。例如，完美的法語發音在發出文字 *français* 的 /R/ 時會帶有小舌顫音，但 Joanna 的美式英文語音則會發音為對應的聲音 /r/。

如果您使用說義大利文`voice-id`的 Giorgio 的 搭配下列文字，Amazon Polly 會使用義大利文發音，以 Giorgio 的聲音說出句子：

```
<speak>
     Mi piace Bruce Springsteen.
</speak>
```



如果您使用相同的語音搭配下列`<lang>`標籤，Amazon Polly 會以義大利英文發音 Bruce Springsteen：

```
<speak>
     Mi piace <lang xml:lang="en-US">Bruce Springsteen.</lang>
</speak>
```

在合成語音時，此標籤也可用來做為選用 [DefaultLangCode](API_StartSpeechSynthesisTask.html#polly-StartSpeechSynthesisTask-request-DefaultLangCode) 選項的替代項目。不過，這樣就需要使用 SSML 來設定文字的格式。



# 在文字中放置自訂標籤
<a name="custom-tag"></a>

*<mark>*

長格式、神經和標準 TTS 格式支援此標籤。此標籤不會對生成語音執行任何操作，因為語音標記不適用於生成語音。

若要在文字中放置自訂標籤，請使用 <mark> 標籤。Amazon Polly 不會對標籤採取任何動作，但會在 SSML 中繼資料中傳回標籤的位置。只要維持以下格式，此標籤可以是您想呼叫的任何項目：

```
<mark name="tag_name"/>
```

 例如，假設標籤名稱為「動物」，而輸入文字是：

```
<speak>
     Mary had a little <mark name="animal"/>lamb.
</speak>
```

Amazon Polly 可能會傳回下列 SSML 中繼資料：

```
{"time":767,"type":"ssml","start":25,"end":46,"value":"animal"}
```



# 在段落之間新增暫停
<a name="p-tag"></a>

*<p>*

生成式、長格式、神經和標準 TTS 格式支援此標籤。

若要在文字的段落之間加入停頓，請使用 <p> 標籤。使用此標籤可提供比母語人士通常在逗號或句子結尾處所用停頓更長的停頓時間。使用 <p> 標籤來括住段落：

```
<speak>
     <p>This is the first paragraph. There should be a pause after this text is spoken.</p> 
     <p>This is the second paragraph.</p> 
</speak>
```

這相當於使用 <break strength="x-strong"/> 來指定停頓。



# 使用音標發音
<a name="phoneme-tag"></a>

*<phoneme>*

長格式、神經和標準 TTS 格式支援此標籤。

若要讓 Amazon Polly 針對特定文字使用音標發音，請使用 <phoneme> 標籤。

`<phoneme>` 標籤需要兩個屬性。這些屬性表示 Amazon Polly 使用的語音字母，以及修正發音的音標：
+ `alphabet` 
  +  `ipa`— 指出要使用的國際音標 (IPA) 
  +  `x-sampa`— 指出要使用的拓展音標字母評估法 (X-SAMPA)。
+ `ph` 
  + 指定發音的音標。如需詳細資訊，請參閱[Amazon Polly 中的語言](supported-languages.md)

使用 `<phoneme>`標籤時，Amazon Polly 會使用 `ph` 屬性指定的發音，而不是預設與所選語音使用的語言相關聯的標準發音。

例如，文字「pecan」可用兩種方式發音。在下列範例中，每行都會指派不同的發音給「pecan」。Amazon Polly 會發出`ph`屬性中指定的 pecan，而不是使用預設發音。

國際音標 (IPA)

```
<speak>
     You say, <phoneme alphabet="ipa" ph="pɪˈkɑːn">pecan</phoneme>. 
     I say, <phoneme alphabet="ipa" ph="ˈpi.kæn">pecan</phoneme>.
</speak>
```

拓展音標字母評估法 (X-SAMPA)

```
<speak>
     You say, <phoneme alphabet='x-sampa' ph='pI"kA:n'>pecan</phoneme>.
     I say, <phoneme alphabet='x-sampa' ph='"pi.k{n'>pecan</phoneme>. 
</speak>
```

 中文使用拼音來發音。

拼音

```
<speak>
     你说 <phoneme alphabet="x-amazon-pinyin" ph="bo2">薄</phoneme>。 
     我说 <phoneme alphabet="x-amazon-pinyin" ph="bao2">薄</phoneme>。
</speak>
```

日文使用 Yomigana 和發音 Kana。

Yomigana

```
<speak>
     名前は<phoneme alphabet="x-amazon-yomigana" ph="ひろかず">浩一</phoneme>です。
     名前は<phoneme alphabet="x-amazon-yomigana" ph="ヒロカズ">浩一</phoneme>です。
     名前は<phoneme alphabet="x-amazon-yomigana" ph="Hirokazu">浩一</phoneme>です。
</speak>
```

發音 Kana

```
<speak>
     名前は<phoneme alphabet="x-amazon-pron-kana" ph="ヒロ'カズ">浩一</phoneme>です。
</speak>
```

# 控制音量、說話速率和音調
<a name="prosody-tag"></a>

*<prosody>*

標準 TTS 語音完全支援 Prosody 標籤屬性。生成式、神經式和長格式語音支援 `volume`和 `rate` 屬性，但不支援 `pitch` 屬性。對於生成語音，prosody 標籤只能圍繞完整句子使用。

若要控制所選語音的音量、速度或音調，請使用 `prosody` 標籤。

音量、說話速度和音調取決於選擇的特定語音。除了不同語言語音之間的差異，講相同語言的各個語音之間也存在差異。因此，雖然所有語言的屬性類似，但各語言間有明顯變化，因此沒有絕對值可用。

`prosody` 標籤有三個屬性，三個屬性都有數個可用值來設定屬性。每個屬性使用相同的語法：

```
<prosody attribute="value"></prosody>
```


+ `volume`
  + `default`：重設音量為目前語音的預設音量。
  + `silent`、`x-soft`、`soft`、`medium`、`loud`、`x-loud`：將音量設定為目前語音的預先定義值。
  + `+ndB`、`-ndB`：根據目前音量來變更音量。`+0dB` 的值代表無變動，`+6dB` 表示大約目前音量的兩倍，`-6dB` 則是指大約目前音量的一半。

  例如，您可以設定一個段落的音量，如下所示：

  ```
  <speak>
       Sometimes it can be useful to <prosody volume="loud">increase the volume 
       for a specific speech.</prosody>                     
  </speak>
  ```

  或者，您可以用下列方式來設定音量：

  ```
  <speak>
       And sometimes a lower volume <prosody volume="-6dB">is a more effective way of 
       interacting with your audience.</prosody>  
  </speak>
  ```
+ `rate`
  +  `x-slow`、`slow`、`medium`、`fast`、`x-fast`。 將音調設定為所選語音的預先定義值。
  + `n%`：說話速度的非負值百分比變更。例如，100% 表示說話速度無變化，200% 表示說話速度是預設速度的兩倍，以及 50% 表示說話速度率是預設速度的一半。這個值的範圍為 20 到 200%。

  例如，您可以設定一個段落的說話速度，如下所示：

  ```
  <speak>
       For dramatic purposes, you might wish to <prosody rate="slow">slow up the speaking 
       rate of your text.</prosody>                     
  </speak>
  ```

  或者，您可以用下列方式來設定音量：

  ```
  <speak>
       Although in some cases, it might help your audience to <prosody rate="85%">slow 
       the speaking rate slightly to aid in comprehension.</prosody>  
  </speak>
  ```
+ `pitch`
  + `default`：重設音調為目前語音的預設層級。
  + `x-low`、`low`、`medium`、`high`、`x-high`：設定音調為目前語音的預先定義值。
  + `+n%` 或 `-n%`：利用相對百分比來調整音調。例如，`+0%` 的值代表基準音高未變，`+5%` 會將基準音高提高一些，而 `-5%` 則會使基準音高降低一些。

  例如，您可以設定一個段落的音調，如下所示：

  ```
  <speak>
       Do you like sythesized speech <prosody pitch="high">with a pitch that is higher 
       than normal?</prosody>                     
  </speak>
  ```

  或者，您可以用下列方式來設定音量：

  ```
  <speak>
       Or do you prefer your speech <prosody pitch="-10%">with a somewhat lower pitch?</prosody>  
  </speak>
  ```

<prosody> 標籤必須至少包含一個屬性，但在相同標籤中可以包含多個屬性。

```
<speak>
     Each morning when I wake up, <prosody volume="loud" rate="x-slow">I speak  
     quite slowly and deliberately until I have my coffee.</prosody>
</speak>
```

也可以和巢狀標籤結合使用，如下所示：

```
<speak>
     <prosody rate="85%">Sometimes combining attributes <prosody pitch="-10%">can 
     change the impression your audience has of a voice</prosody> as well.</prosody>                  
</speak>
```

**注意**  
目前`<prosody>`部分可用於生成語音。



# 設定合成語音的最長持續時間
<a name="maxduration-tag"></a>

*<prosody amazon:max-duration>*

目前只有標準 TTS 格式支援此標籤。

若要控制語音合成時的持續時間長度，請使用 `<prosody>` 標籤搭配 `amazon:max-duration` 屬性。

取決於您所選擇的語音，合成語音的持續時間長度會稍有不同。因此，如果要將合成的語音，對應到視覺效果或需要精準對時的其他活動，可能會有點困難。對翻譯應用程式而言，這項問題會更嚴重，因為不同語言說出特定詞組所需的時間，可能會有很大的差異。

`<prosody amazon:max-duration>` 標籤會將合成語音對應到您所要的持續時間長度。

此標籤使用以下語法：

```
<prosody amazon:max-duration="time duration">
```

使用 `<prosody amazon:max-duration>` 標籤，您可以指定持續時間長度 (秒或毫秒)：
+ `ns`：持續時間長度上限 (以秒為單位)
+ `nms`：持續時間長度上限 (以毫秒為單位)

例如，下列口說文字的時間長度上限為 2 秒：

```
<speak>
     <prosody amazon:max-duration="2s">
          Human speech is a powerful way to communicate. 
     </prosody>
</speak>
```

放置在標籤內的文字，不會超過指定的持續時間長度。如果選擇的語音或語言通常需要超過該持續時間，Amazon Polly 會加速語音，使其符合指定的持續時間。

如果指定的持續時間超過以正常速率讀取文字所需的時間，Amazon Polly 會正常讀取語音。&POL; 不會減慢語音的速度或加入靜音，因此產生的音訊會比所請求的短。

**注意**  
Amazon Polly 增加的速度不超過正常速率的 5 倍。如果用超過這個標準的速度來說出文字，通常會聽不清楚。如果即使加快到最高速度，也無法符合您指定的持續時間長度時，會將音訊的速度加快，但持續時間將會超過指定的長度。

您可以在 `<prosody amazon:max-duration>` 標籤中包含單一句子或多個句子，也可以在文字內容中使用多個 `<prosody amazon:max-duration>`。

例如：

```
<speak>
     <prosody amazon:max-duration="2400ms">
        Human speech is a powerful way to communicate.
     </prosody>
     <break strength="strong"/>
     <prosody amazon:max-duration="5100ms">
        Even a simple ‘Hello’ can convey a lot of information depending on the pitch, intonation, and tempo.
     </prosody>
     <break strength="strong"/>
     <prosody amazon:max-duration="8900ms">
        We naturally understand this information, which is why speech is ideal for creating applications where 
        a screen isn’t practical or possible, or simply isn’t convenient.
     </prosody>
</speak>
```



```
```

當 Amazon Polly 傳回合成語音時，使用 `<prosody amazon:max-duration>`標籤可能會增加延遲。延遲的程度取決於文字內容及其長度。我們建議所使用的文字內容，最好包含相對較短的文字段落。

**限制**

使用 `<prosody amazon:max-duration>` 標籤的方式和此標籤搭配其他 SSML 標籤運作的方式，皆受到限制：
+ `<prosody amazon:max-duration>` 標籤內所包含的文字，其長度不能超過 1500 個字元。
+ 您不能嵌套 `<prosody amazon:max-duration>` 標籤。如果您將一個`<prosody amazon:max-duration>`標籤放入另一個標籤，Amazon Polly 會忽略內部標籤。

  例如，在下列的範例內容中，`<prosody amazon:max-duration="5s">` 標籤會被忽略：

  ```
  <speak>
       <prosody amazon:max-duration="16s">
            Human speech is a powerful way to communicate.
          
            <prosody amazon:max-duration="5s">
                 Even a simple ‘Hello’ can convey a lot of information depending on the pitch, intonation, and tempo.
            </prosody>
  
            We naturally understand this information, which is why speech is ideal for creating applications where a screen isn’t practical or possible, or simply isn’t convenient.
       </prosody>
  </speak>
  ```
+ 您不能在使用 `<prosody>` 標籤搭配 `rate` 標籤中的 `<prosody amazon:max-duration>` 屬性。因為這兩者都會影響到口語文字的速度。

  在下列範例中，Amazon Polly 會忽略 `<prosody rate="2">`標籤：

  ```
  <speak>
       <prosody amazon:max-duration="7500ms">
            Human speech is a powerful way to communicate.
        
            <prosody rate="2">
                 Even a simple ‘Hello’ can convey a lot of information depending on the pitch, intonation, and tempo.
            </prosody>
       </prosody>
  </speak>
  ```

**停頓和 `max-duration` **

使用 `max-duration` 標籤時，您仍然可以在文字內容中插入停頓。不過，Amazon Polly 會在計算語音持續時間上限時包含暫停的長度。此外，Amazon Polly 會保留短停頓，其中逗號和句點放置在段落中，並包含在最長持續時間中。

例如，在下列的段落中，8 秒的語音包含了 600 毫秒的停頓，以及逗號和句點所造成的停頓。

```
<speak>
     <prosody amazon:max-duration="8s">
          Human speech is a powerful way to communicate.
          <break time="600ms"/>
          Even a simple ‘Hello’ can convey a lot of information depending on the pitch, intonation, and tempo.
     </prosody>
</speak>
```



# 在句子之間新增暫停
<a name="s-tag"></a>

*<s>*

生成式、長格式、神經和標準 TTS 格式支援此標籤。

若要在您的文字行或句子之間加入停頓，請使用 `<s>` 標籤。使用此標籤與下列方式有相同的效果：
+ 使用句號 (.) 結束句子
+ 使用 `<break strength="strong"/>` 指定停頓

與 `<break>` 標籤不同的是，<s> 標籤必須括住句子。這可用於依行 (而非句子) 分組的合成語音，例如詩詞。

在下列範例中，`<s>` 標籤在第一個句子和第二個句子之後，建立短暫的停頓。最後一個句子沒有 `<s>` 標籤，但其後也有短暫的停頓，因為以句號結尾。

```
<speak>
     <s>Mary had a little lamb</s> 
     <s>Whose fleece was white as snow</s> 
     And everywhere that Mary went, the lamb was sure to go.
</speak>
```



# 控制如何說出特殊類型的單字
<a name="say-as-tag"></a>

*<say-as>*

 `<say-as>` 標籤由生成式、長形、神經和標準 TTS 引擎支援。不過請注意，如果 Amazon Polly 使用神經語音，並在執行時間遇到具有 `characters`選項的`<say-as>`標籤，則會使用相關的標準語音合成受影響的句子。不過，受影響的句子仍會像使用神經語音一樣計費。

使用 `<say-as>`標籤搭配 `interpret-as` 屬性，告訴 Amazon Polly 如何說出特定字元、單字和數字。這可讓您提供額外的內容，以消除 Amazon Polly 應如何呈現文字的任何模棱兩可之處。

`<say-as>` 標籤使用一個屬性 `interpret-as`，它使用許多可用的值。每個值使用相同的語法：

```
<say-as interpret-as="value">[text to be interpreted]</say-as>
```

以下值可用於 `interpret-as`：
+ `characters` 或 `spell-out`：拼出文字的每個字母，如 a-b-c。
**注意**  
神經語音目前不支援此選項。如果您使用神經語音，且 Amazon Polly 在執行時間遇到此 SSML 程式碼，則會使用相關的標準語音合成受影響的句子。不過請注意，這句話仍會像使用神經語音一樣計費。
+ `cardinal` 或 `number`：解讀數值文字為基數，如 1,234。
+ `ordinal`：解讀數值文字為序號，如第 1,234 個。
+ `digits`：個別拼出每個位數，如 1-2-3-4。
+ `fraction`：解讀數值文字為分數。這可以處理常見的分數，例如 3/20，以及混合分數，例如 2 ½。如需詳細資訊，請參閱下方。
+ `unit`：將數值文字解譯為測量單位。值應該是一個數字或後面接著單位的分數，中間沒有空格，如 `1/2inch`；或只跟著一個單位，如 `1meter`。
+ `date`：將文字解譯為日期。日期的格式必須以格式屬性指定。如需詳細資訊，請參閱下方。
+ `time`：將數值文字解譯為以分鐘和秒為單位的持續時間，例如 `1'21"`。
+ `address`：將文字解譯為街道地址的一部分。
+ `expletive`：「嗶聲處理」標籤中所包含的內容。
+ `telephone`：將數值文字解譯為 7 位數或 10 位數的電話號碼，如 `2025551212`。您也可以使用此值來處理電話分機，如 `2025551212x345`。如需詳細資訊，請參閱下方。
**注意**  
目前 `telephone` 選項不是所有語言都適用。然而，它可用於語音英文變體 (en-AU、en-GB、en-IN、en-US 和 en-GB-WLS)、西班牙文變體 (es-ES、es-MX 和 es-US)、法文變體 (fr-FR 和 fr-CA) 和葡萄牙文變體 (pt-BR 和 pt-PT)，以及德文 (de-DE)、義大利文 (it-IT)、日文 (ja-JP) 和俄羅斯文 (ru-RU)。另請注意，在某些情況下，阿拉伯文 (arb) 等語言會自動處理設定為電話號碼的號碼，因此請勿實際實作 `telephone` SSML 標籤。

**分數**

Amazon Polly 會解譯`say-as`標籤內具有`interpret-as="fraction"`屬性為常見分數的值。以下是分數的語法：
+ *分數*

  語法：*基數*/*基數*，如 2/9。

  例如：`<say-as interpret-as="fraction">2/9</say-as>` 發音為「九分之二」。
+ *非負數的混合數字*

  語法：*基數*\$1*基數*/*基數*，例如 3\$11/2。

  例如，`<say-as interpret-as="fraction">3+1/2</say-as>` 發音為「三又二分之一」。
**注意**  
「3」和「1/2」`+`之間必須有一個 。Amazon Polly 不支援沒有 的混合數字`+`，例如 "3 1/2"。

**日期**

當 `interpret-as` 設定為 `date`，您也需要指出日期的格式：

此標籤使用以下語法：

```
<say-as interpret-as="date" format="format">[date]</say-as>
```

例如：

```
<speak>
     I was born on <say-as interpret-as="date" format="mdy">12-31-1900</say-as>.
</speak>
```

下列格式可以搭配 `date` 屬性使用。
+ `mdy`：月-日-年。
+ `dmy`：日-月-年。
+ `ymd`：年-月-日。
+ `md`：月-日。
+ `dm`：日-月。
+ `ym`：年-月。
+ `my`：月-年。
+ `d`：日。
+ `m`: 月.
+ `y`: 年.
+ `yyyymmdd`：年-月-日。如果您使用此格式，您可以使用問號讓 Amazon Polly 略過部分日期。

  例如，Amazon Polly 會將下列項目轉譯為「9 月 22 日」：

  ```
  <say-as interpret-as="date">????0922</say-as>
  ```

   不需要 `Format`。

**電話**

即使沒有 `<say-as>`標籤，Amazon Polly 仍會嘗試根據文字的格式正確解譯您提供的文字。例如，如果您的文字包含「202-555-1212」，Amazon Polly 會將其解譯為 10 位數的電話號碼，並個別說出每個數字，每個破折號都會短暫暫停。在這種情況下，您不需要使用 `<say-as interpret-as="telephone">`。不過，如果您提供文字 “2025551212”，並希望 Amazon Polly 將其說出為電話號碼，您可以指定 `<say-as interpret-as="telephone">`。

解譯每個元素的邏輯具有語言特殊性。例如，美式英文和英式英文對於電話號碼的發音方式各不相同 (在英式英文中，同一個數字連續群組在一起時，例如「兩個五」或「三個四」)。若想了解差異，您可以使用美國語音與英國語音測試以下範例：

```
<speak>
     Richard's number is <say-as interpret-as="telephone">2122241555</say-as>
</speak>
```



# 發音縮寫和縮寫
<a name="sub-tag"></a>

*<sub>*

生成式、長格式、神經和標準 TTS 格式支援此標籤。

使用 `<sub>` 標籤搭配 `alias` 屬性，可取代所選文字的不同字詞 (或讀音)，例如首字母縮寫或縮寫。

此屬性使用語法：

```
<sub alias="new word">abbreviation</sub>
```

 在下列範例中，名稱「Mercury」(水銀) 取代為元素的化學符號，讓音訊內容更清楚。

```
<speak>
     My favorite chemical element is <sub alias="Mercury">Hg</sub>, because it looks so shiny. 
</speak>
```



# 透過指定語音部分來改善發音
<a name="w-tag"></a>

*<w>*

生成式、長格式、神經和標準 TTS 格式支援此標籤。

您可使用 <w> 標籤，透過指定單字的部分語音或替代含意來自訂文字發音。這可使用 `role` 屬性來完成。

此標籤使用以下語法：

```
<w role="attribute">text</w>
```

下列值可以用於 `role` 屬性：

指定語音部分：
+ `amazon:VB`：將文字解釋為動詞 (現在式)。
+ `amazon:VBD`：將字詞解譯為過去的張量動詞。
+ `amazon:DT`：將單字解譯為判斷器。
+ `amazon:IN`：將單字解譯為述詞。
+ `amazon:JJ`：將單字解譯為形容詞。
+ `amazon:NN`：將單字解譯為名詞。

例如，視語音部分而定，美式英文的「read」讀音可依照標籤而改變：

```
<speak>
     The word <say-as interpret-as="characters">read</say-as> may be interpreted 
     as either the present simple form <w role="amazon:VB">read</w>, or the past 
     participle form <w role="amazon:VBD">read</w>.
</speak>
```

若要指定特定意義：
+ `amazon:DEFAULT`： 使用單字的預設感。
+ `amazon:SENSE_1`：顯示時使用非預設的字意。例如，名詞「bass」的讀音會因含意的不同而不同。預設的含意是指音域的最低部分。其替代含意是指一種淡水魚，也叫做「bass」，但讀音不同。使用 `<w role="amazon:SENSE_1">bass</w>` 轉譯音訊文字的非預設發音 (淡水魚)。

如果您合成以下內容，則可以聽到發音和意義的差異：

```
<speak>
    Depending on your meaning, the word <say-as interpret-as="characters">bass</say-as> 
    may be interpreted as either a musical element: bass, or as its alternative meaning, 
    a freshwater fish <w role="amazon:SENSE_1">bass</w>.
</speak>
```

**注意**  
 有些語言可能會有不同的口語支援功能選擇。

# 新增呼吸聲
<a name="breath-tag"></a>

*<amazon:breath> 和 <amazon:auto-breaths>*

只有標準 TTS 格式才支援此標籤。

自然音調的語音包含正確發音的字詞以及呼吸聲。新增呼吸聲至合成語音中，可讓語音聽起來更加自然。`<amazon:breath>` 和 `<amazon:auto-breaths>` 標籤提供呼吸聲。您有下列選項：
+  手動模式：您設定文字中呼吸聲的出現的位置、長度以及音量
+  自動化模式：Amazon Polly 會自動將呼吸聲插入語音輸出
+  混合模式：您和 Amazon Polly 都會新增呼吸聲 

**手動模式**  
在手動模式中，您將 `<amazon:breath/>` 標籤放入輸入文字內想要加入呼吸聲的位置。您可以分別使用 `duration` 和 `volume` 屬性來自訂呼吸聲的長度和音量：


+ `duration`：控制呼吸聲的長度。有效值為：`default`、`x-short`、`short`、`medium`、`long`、`x-long`。預設值為 `medium`。
+ `volume`：控制呼吸聲的音量。有效值為：`default`、`x-soft`、`soft`、`medium`、`loud`、`x-loud`。預設值為 `medium`。

**注意**  
每個屬性值的確切長度和音量取決於使用的特定 Amazon Polly 語音。

若要使用預設值來設定呼吸聲，請使用沒有屬性的 `<amazon:breath/>`。

例如，若要使用屬性來設定呼吸聲的長度與音量為中等，可將屬性設定如下：

```
<speak>
     Sometimes you want to insert only <amazon:breath duration="medium" volume="x-loud"/>a single breath.
</speak>
```

若要使用預設值，您只需使用標籤：

```
<speak>
     Sometimes you need <amazon:breath/>to insert one or more average breaths <amazon:breath/> so that the 
     text sounds correct.
</speak>
```

您可以新增呼吸聲到段落中，如下所示：

```
<speak>
     <amazon:breath duration="long" volume="x-loud"/> <prosody rate="120%"> <prosody volume="loud"> 
     Wow! <amazon:breath duration="long" volume="loud"/> </prosody> That was quite fast. <amazon:breath 
     duration="medium" volume="x-loud"/> I almost beat my personal best time on this track. </prosody>
</speak>
```

**自動模式**  
在自動化模式下，您可以使用 `<amazon:auto-breaths>`標籤，指示 Amazon Polly 以適當的間隔自動建立呼吸雜訊。您可以設定間隔的頻率、呼吸聲音量以及呼吸聲長度。將 `</amazon:auto-breaths>` 標籤置於您想要加入自動呼吸聲的文字開頭，然後在尾端加上結束標籤。

**注意**  
與手動模式標籤不同，`<amazon:breath/>`、`<amazon:auto-breaths>` 標籤需要結束標記 (`</amazon:auto-breaths>`)。

您可以使用以下含有 `<amazon:auto-breaths>` 標籤的可選屬性：
+ `volume`：控制呼吸聲的音量。有效值為：`default`、`x-soft`、`soft`、`medium`、`loud`、`x-loud`。預設值為 `medium`。
+ `frequency`：控制呼吸聲在文字中發生的頻率。有效值為：`default`、`x-low`、`low`、`medium`、`high`、`x-high`。預設值為 `medium`。
+ `duration`：控制呼吸聲的長度。有效值為：`default`、`x-short`、`short`、`medium`、`long`、`x-long`。預設值為 `medium`。

在預設情況下，呼吸聲的頻率將取決於輸入文字。不過，呼吸聲經常出現在逗號和句點之後。

下列範例示範如何使用 `<amazon:auto-breaths>` 標籤：若要決定您的內容要使用哪些選項，請將適用的範例複製到 Amazon Polly 主控台，並聆聽差異。
+  使用不含選用參數的自動模式。

  ```
  <speak>
       <amazon:auto-breaths>Amazon Polly is a service that turns text into lifelike speech, 
       allowing you to create applications that talk and build entirely new categories of speech-
       enabled products. Amazon Polly is a text-to-speech service that uses advanced deep learning 
       technologies to synthesize speech that sounds like a human voice. With dozens of lifelike 
       voices across a variety of languages, you can select the ideal voice and build speech-
       enabled applications that work in many different countries.</amazon:auto-breaths>
  </speak>
  ```
+  使用含有音量控制的自動模式。未指定參數 (`duration` 與 `frequency`) 皆設為預設值 (`medium`)。

  ```
  <speak>
       <amazon:auto-breaths volume="x-soft">Amazon Polly is a service that turns text into lifelike 
       speech, allowing you to create applications that talk and build entirely new categories of 
       speech-enabled products. Amazon Polly is a text-to-speech service, that uses advanced deep 
       learning technologies to synthesize speech that sounds like a human voice. With dozens of 
       lifelike voices across a variety of languages, you can select the ideal voice and build speech-
       enabled applications that work in many different countries.</amazon:auto-breaths>
  </speak>
  ```
+  使用含有頻率控制的自動模式。未指定參數 (`duration` 與 `volume`) 皆設為預設值 (`medium`)。

  ```
  <speak>
       <amazon:auto-breaths frequency="x-low">Amazon Polly is a service that turns text into lifelike 
       speech, allowing you to create applications that talk and build entirely new categories of 
       speech-enabled products. Amazon Polly is a text-to-speech service, that uses advanced deep 
       learning technologies to synthesize speech that sounds like a human voice. With dozens of 
       lifelike voices across a variety of languages, you can select the ideal voice and build speech-
       enabled applications that work in many different countries.</amazon:auto-breaths>
  </speak>
  ```
+  使用含有多個參數的自動模式。對於未指定的`Duration`參數，Amazon Polly 會使用預設值 (`medium`)。

  ```
  <speak>
       <amazon:auto-breaths volume="x-loud" frequency="x-low">Amazon Polly is a service that turns 
       text into lifelike speech, allowing you to create applications that talk and build entirely new 
       categories of speech-enabled products. Amazon Polly is a text-to-speech service, that uses 
       advanced deep learning technologies to synthesize speech that sounds like a human voice. With 
       dozens of lifelike voices across a variety of languages, you can select the ideal voice and build 
       speech-enabled applications that work in many different countries.</amazon:auto-breaths>
  </speak>
  ```



# 新聞播報員說話風格
<a name="newscaster-tag"></a>

*<amazon:domain name="news">*

新聞播報員風格僅適用於 Matthew 或 Joanna 語音，僅提供美式英文 (en-US)、Lupe、美式西班牙文 (es-US) 和 Amy、英式英文 (en-GB)。只有使用 `Neural` 格式時才支援。

若要使用新聞播報員風格，請使用 SSML 標籤和下列語法：

```
<amazon:domain name="news">text</amazon:domain>
```

例如，您可以將新聞播報員風格與 Amy 語音搭配使用，如下所示：

```
<speak> 
<amazon:domain name="news"> 
From the Tuesday, April 16th, 1912 edition of The Guardian newspaper: 

The maiden voyage of the White Star liner Titanic, the largest ship ever launched, has ended in disaster. 

The Titanic started her trip from Southampton for New York on Wednesday. Late on Sunday night she struck 
an iceberg off the Grand Banks of Newfoundland. By wireless telegraphy she sent out signals of distress, 
and several liners were near enough to catch and respond to the call.
</amazon:domain> 
</speak>
```

# 新增動態範圍壓縮
<a name="drc-tag"></a>

*<amazon:effect name="drc">*

長格式、神經和標準 TTS 格式支援此標籤。

根據音訊檔中所使用的文字、語言和語音，聲音範圍從柔和到大聲。環境音例如移動中車輛的聲音，通常可以遮罩為較柔和的聲音，使得音軌難以聽得清楚。若要增強音訊檔中特定聲音的音量，請使用動態範圍壓縮 (`drc`) 標記。

`drc` 標籤會為您的音訊設定中音的「響度」閾值，並提高該閾值附近聲音的音量 (增益)。最靠近閾值套用最大增益，遠離閾值則增益隨之減少。

![\[動態範圍壓縮會增加特定閾值周圍聲音的音量。\]](http://docs.aws.amazon.com/zh_tw/polly/latest/dg/images/drc-on.png)


這可讓中間範圍的聲音在吵雜環境中比較容易聽到，使得整個音訊檔更清晰。

`drc` 標記是一種布林值參數 (有或沒有)。它使用語法：`<amazon:effect name="drc">` 並以 `</amazon:effect>` 結束。

您可以使用 `drc`標籤搭配 Amazon Polly 支援的任何語音或語言。您可以將其套用到錄音的整個部分或只幾個字。例如：

```
<speak>
     Some audio is difficult to hear in a moving vehicle, but <amazon:effect name="drc"> this audio 
     is less difficult to hear in a moving vehicle.</amazon:effect>
</speak>
```

**注意**  
當您使用 語法中的 `drc` 時，它會區分大小寫。`amazon:effect `

**使用 `drc` 搭配 `prosody volume` 標籤**  
如下圖所示，`prosody volume` 標記從原始層級 (虛線) 到調整層級 (實線)，平均地提高整個音訊檔案的音量。若要進一步提高檔案特定部分的音量，請使用 `drc` 標記搭配 `prosody volume` 標記。結合使用標記不會影響 `prosody volume` 標記的設定。

![\[使用 prosody volume標籤可增加整個音訊檔案的磁碟區。\]](http://docs.aws.amazon.com/zh_tw/polly/latest/dg/images/prosodyloud.png)


當您同時使用 `drc`和 `prosody volume`標籤時，Amazon Polly 會先套用`drc`標籤，增加中間範圍聲音 （接近閾值的聲音）。接著套用 `prosody volume` 標記並進一步平均提高整個音軌的音量。

![\[除了整個音軌的音量之外，drc搭配 prosody volume 標籤使用 還會增加中間範圍聲音的音量。\]](http://docs.aws.amazon.com/zh_tw/polly/latest/dg/images/prosody+drc.png)


若要一起使用標記，請將其中一巢套到另一個內部。例如：

```
<speak>
     <prosody volume="loud">This text needs to be understandable and loud. <amazon:effect name="drc">
     This text also needs to be more understandable in a moving car.</amazon:effect></prosody> 
</speak>
```

在這個文字中，`prosody volume` 標記會提高整段的音量為「大聲」。`drc` 標記會在第二個句子增強中間範圍值的音量。

**注意**  
一起使用 `drc` 和 `prosody volume` 標記時，對於巢狀標記請使用標準 XML 做法。



# 柔和地說話
<a name="phonation-tag"></a>

*<amazon:effect phonation="soft">*

目前只有標準 TTS 格式支援此標籤。

若要指定輸入文字的說出聲音應該比正常聲音更柔和，請使用 <amazon:effect phonation="soft"> 標籤。

此屬性使用語法：

```
<amazon:effect phonation="soft">text</amazon:effect>
```

例如，您可以使用此標籤搭配 Matthew 語音，如下所示：

```
<speak>
     This is Matthew speaking in my normal voice. <amazon:effect phonation="soft">This 
     is Matthew speaking in my softer voice.</amazon:effect>
</speak>
```





# 控制潮汐
<a name="vocaltractlength-tag"></a>

*<amazon:effect vocal-tract-length>*

目前只有標準 TTS 格式支援此標籤。

音色是是語音的音質，可協助您分辨語音間的不同，甚至當其音調和大小聲相同時也能分辨出。決定語音音色的其中一個最重要生理特徵是聲道的長度，這是範圍從聲帶頂部到嘴唇邊緣的一個氣腔。

若要控制 Amazon Polly 中輸出語音的波紋，請使用 `vocal-tract-length`標籤。此標記具有變更喇叭聲道長度的效果，聽到類似喇叭的大小有所變更。當您增加 `vocal-tract-length` 時，喇叭實際聽起來越大聲。當您縮短時，喇叭聲音會變小。您可以將此標籤與 Amazon Polly Text-to-Speech 產品組合中的任何語音搭配使用。

若要變更音色，請使用以下值：
+ `+n%` 或 `-n%`：按照目前語音的相對百分比變動來調整聲道長度。例如，\$14% 或 -2%。有效值範圍從 \$1 100% 到 -50%。這個範圍以外的值會剪除。例如，\$1 111% 聽起來類似 \$1 100% 而 -60% 聽起來像 -50%。
+ `n%`：變更聲道長度為目前語音的聲道長度的絕對百分比。例如，110% 或 75%。絕對值 110% 等於相對值 \$110%。絕對值 100% 與目前語音的預設值相同。

以下範例說明如何透過變更聲道長度來變更音色：

```
<speak>
     This is my original voice, without any modifications. <amazon:effect vocal-tract-length="+15%"> 
     Now, imagine that I am much bigger. </amazon:effect> <amazon:effect vocal-tract-length="-15%"> 
     Or, perhaps you prefer my voice when I'm very small. </amazon:effect> You can also control the 
     timbre of my voice by making minor adjustments. <amazon:effect vocal-tract-length="+10%"> 
     For example, by making me sound just a little bigger. </amazon:effect><amazon:effect 
     vocal-tract-length="-10%"> Or, making me sound only somewhat smaller. </amazon:effect> 
</speak>
```

** 結合多個標記**

您可以結合`vocal-tract-length`標籤與 Amazon Polly 支援的任何其他 SSML 標籤。由於音色 (聲道長度) 和音調密切連結，您可以透過使用 `vocal-tract-length` 和 `<prosody pitch>` 標記獲得最佳結果。若要產生最逼真的語音，建議您針對兩個標籤使用不同的百分比變化。試驗各種組合來獲得您想要的結果。

下列範例顯示如何結合標記。

```
<speak> 
     The pitch and timbre of a person's voice are connected in human speech.
     <amazon:effect vocal-tract-length="-15%"> If you are going to reduce the vocal tract length, 
     </amazon:effect><amazon:effect vocal-tract-length="-15%"> <prosody pitch="+20%"> you 
     might consider increasing the pitch, too. </prosody></amazon:effect>  
     <amazon:effect vocal-tract-length="+15%"> If you choose to lengthen the vocal tract, 
     </amazon:effect> <amazon:effect vocal-tract-length="+15%"> <prosody pitch="-10%"> 
     you might also want to lower the pitch. </prosody></amazon:effect>
</speak>
```



# 輕聲低語
<a name="whispered-tag"></a>

*<amazon:effect name="whispered">*

目前只有標準 TTS 格式支援此標籤。

此標籤表示輸入文字應以低聲而非一般語音說出。這可與 Amazon Polly Text-to-Speech 產品組合中的任何語音搭配使用。

此標籤使用以下語法：

```
<amazon:effect name="whispered">text</amazon:effect>
```

例如：

```
<speak>
     <amazon:effect name="whispered">If you make any noise, </amazon:effect> 
     she said, <amazon:effect name="whispered">they will hear us.</amazon:effect>
</speak>
```

在這種情況下，角色所說的合成語音是低語，但「她說」片語是在所選 Amazon Polly 語音的正常合成語音中說出的。

根據想要的效果，您可以透過將韻律率減慢最多 10%，來增強「低語」效果。

例如：

```
<speak>
     When any voice is made to whisper, <amazon:effect name="whispered">
     <prosody rate="-10%">the sound is slower and quieter than normal speech
     </prosody></amazon:effect>
</speak>
```

當產生低聲語音的語音標記時，音訊串流還必須包含低聲語音，以確保語音標記符合音訊串流。

