

# 使用 AWS CLI 的 Amazon Polly 示例
<a name="cli_polly_code_examples"></a>

以下代码示例演示如何通过将 AWS Command Line Interface与 Amazon Polly 结合使用，来执行操作和实现常见场景。

*操作是大型程序的代码摘录*，必须在上下文中运行。您可以通过操作了解如何调用单个服务函数，还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接，您可以从中找到有关如何在上下文中设置和运行代码的说明。

**Topics**
+ [操作](#actions)

## 操作
<a name="actions"></a>

### `delete-lexicon`
<a name="polly_DeleteLexicon_cli_topic"></a>

以下代码示例演示了如何使用 `delete-lexicon`。

**AWS CLI**  
**删除词典**  
以下 `delete-lexicon` 示例删除指定的词典。  

```
aws polly delete-lexicon \
    --name w3c
```
此命令不生成任何输出。  
有关更多信息，请参阅《Amazon Polly 开发人员指南》**中的[使用 DeleteLexicon 操作](https://docs.aws.amazon.com/polly/latest/dg/gs-delete-lexicon.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [DeleteLexicon](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/polly/delete-lexicon.html)。

### `get-lexicon`
<a name="polly_GetLexicon_cli_topic"></a>

以下代码示例演示了如何使用 `get-lexicon`。

**AWS CLI**  
**检索词典的内容**  
以下 `get-lexicon` 示例检索指定的发音词典内容。  

```
aws polly get-lexicon \
    --name w3c
```
输出：  

```
{
    "Lexicon": {
        "Content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<lexicon version=\"1.0\" \n      xmlns=    \"http://www.w3.org/2005/01/pronunciation-lexicon\"\n      xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" \n          xsi:schemaLocation=\"http://www.w3.org/2005/01/pronunciation-lexicon \n        http://www.w3.org/TR/2007/CR-pronunciation-    lexicon-20071212/pls.xsd\"\n      alphabet=\"ipa\" \n      xml:lang=\"en-US\">\n  <lexeme>\n    <grapheme>W3C</grapheme>\n        <alias>World Wide Web Consortium</alias>\n  </lexeme>\n</lexicon>\n",
        "Name": "w3c"
    },
    "LexiconAttributes": {
        "Alphabet": "ipa",
        "LanguageCode": "en-US",
        "LastModified": 1603908910.99,
        "LexiconArn": "arn:aws:polly:us-west-2:880185128111:lexicon/w3c",
        "LexemesCount": 1,
        "Size": 492
    }
}
```
有关更多信息，请参阅《Amazon Polly 开发人员指南》**中的[使用 GetLexicon 操作](https://docs.aws.amazon.com/polly/latest/dg/gs-get-lexicon.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [GetLexicon](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/polly/get-lexicon.html)。

### `get-speech-synthesis-task`
<a name="polly_GetSpeechSynthesisTask_cli_topic"></a>

以下代码示例演示了如何使用 `get-speech-synthesis-task`。

**AWS CLI**  
**获取有关语音合成任务的信息**  
以下 `get-speech-synthesis-task` 示例检索有关指定语音合成任务的信息。  

```
aws polly get-speech-synthesis-task \
    --task-id 70b61c0f-57ce-4715-a247-cae8729dcce9
```
输出：  

```
{
    "SynthesisTask": {
        "TaskId": "70b61c0f-57ce-4715-a247-cae8729dcce9",
        "TaskStatus": "completed",
        "OutputUri": "https://s3.us-west-2.amazonaws.com/amzn-s3-demo-bucket/70b61c0f-57ce-4715-a247-cae8729dcce9.mp3",
        "CreationTime": 1603911042.689,
        "RequestCharacters": 1311,
        "OutputFormat": "mp3",
        "TextType": "text",
        "VoiceId": "Joanna"
    }
}
```
有关更多信息，请参阅《Amazon Polly 开发人员指南》**中的[创建长音频文件](https://docs.aws.amazon.com/polly/latest/dg/longer-cli.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [GetSpeechSynthesisTask](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/polly/get-speech-synthesis-task.html)。

### `list-lexicons`
<a name="polly_ListLexicons_cli_topic"></a>

以下代码示例演示了如何使用 `list-lexicons`。

**AWS CLI**  
**列出您的词典**  
以下 `list-lexicons` 示例列出了您的发音词典。  

```
aws polly list-lexicons
```
输出：  

```
{
    "Lexicons": [
        {
            "Name": "w3c",
            "Attributes": {
                "Alphabet": "ipa",
                "LanguageCode": "en-US",
                "LastModified": 1603908910.99,
                "LexiconArn": "arn:aws:polly:us-east-2:123456789012:lexicon/w3c",
                "LexemesCount": 1,
                "Size": 492
            }
        }
    ]
}
```
有关更多信息，请参阅《Amazon Polly 开发人员指南》**中的[使用 ListLexicons 操作](https://docs.aws.amazon.com/polly/latest/dg/gs-list-lexicons.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [ListLexicons](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/polly/list-lexicons.html)。

### `list-speech-synthesis-tasks`
<a name="polly_ListSpeechSynthesisTasks_cli_topic"></a>

以下代码示例演示了如何使用 `list-speech-synthesis-tasks`。

**AWS CLI**  
**列出您的语音合成任务**  
以下 `list-speech-synthesis-tasks` 示例列出了您的语音合成任务。  

```
aws polly list-speech-synthesis-tasks
```
输出：  

```
{
    "SynthesisTasks": [
        {
            "TaskId": "70b61c0f-57ce-4715-a247-cae8729dcce9",
            "TaskStatus": "completed",
            "OutputUri": "https://s3.us-west-2.amazonaws.com/amzn-s3-demo-bucket/70b61c0f-57ce-4715-a247-cae8729dcce9.mp3",
            "CreationTime": 1603911042.689,
            "RequestCharacters": 1311,
            "OutputFormat": "mp3",
            "TextType": "text",
            "VoiceId": "Joanna"
        }
    ]
}
```
有关更多信息，请参阅《Amazon Polly 开发人员指南》**中的[创建长音频文件](https://docs.aws.amazon.com/polly/latest/dg/longer-cli.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [ListSpeechSynthesisTasks](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/polly/list-speech-synthesis-tasks.html)。

### `put-lexicon`
<a name="polly_PutLexicon_cli_topic"></a>

以下代码示例演示了如何使用 `put-lexicon`。

**AWS CLI**  
**存储词典**  
以下 `put-lexicon` 示例存储指定的发音词典。`example.pls` 文件指定符合 W3C PLS 标准的词典。  

```
aws polly put-lexicon \
    --name w3c \
    --content file://example.pls
```
`example.pls` 的内容  

```
{
    <?xml version="1.0" encoding="UTF-8"?>
    <lexicon version="1.0"
        xmlns="http://www.w3.org/2005/01/pronunciation-lexicon"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.w3.org/2005/01/pronunciation-lexicon
            http://www.w3.org/TR/2007/CR-pronunciation-lexicon-20071212/pls.xsd"
        alphabet="ipa"
        xml:lang="en-US">
        <lexeme>
            <grapheme>W3C</grapheme>
            <alias>World Wide Web Consortium</alias>
        </lexeme>
    </lexicon>
}
```
此命令不生成任何输出。  
有关更多信息，请参阅《Amazon Polly 开发人员指南》**中的[使用 PutLexicon 操作](https://docs.aws.amazon.com/polly/latest/dg/gs-put-lexicon.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [PutLexicon](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/polly/put-lexicon.html)。

### `start-speech-synthesis-task`
<a name="polly_StartSpeechSynthesisTask_cli_topic"></a>

以下代码示例演示了如何使用 `start-speech-synthesis-task`。

**AWS CLI**  
**合成文本**  
以下 `start-speech-synthesis-task` 示例合成了 `text_file.txt` 中的文本，并将生成的 MP3 文件存储在指定的存储桶中。  

```
aws polly start-speech-synthesis-task \
    --output-format mp3 \
    --output-s3-bucket-name amzn-s3-demo-bucket \
    --text  file://text_file.txt \
    --voice-id Joanna
```
输出：  

```
{
    "SynthesisTask": {
        "TaskId": "70b61c0f-57ce-4715-a247-cae8729dcce9",
        "TaskStatus": "scheduled",
        "OutputUri": "https://s3.us-east-2.amazonaws.com/amzn-s3-demo-bucket/70b61c0f-57ce-4715-a247-cae8729dcce9.mp3",
        "CreationTime": 1603911042.689,
        "RequestCharacters": 1311,
        "OutputFormat": "mp3",
        "TextType": "text",
        "VoiceId": "Joanna"
    }
}
```
有关更多信息，请参阅《Amazon Polly 开发人员指南》**中的[创建长音频文件](https://docs.aws.amazon.com/polly/latest/dg/longer-cli.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [StartSpeechSynthesisTask](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/polly/start-speech-synthesis-task.html)。