

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用转录 AWS CLI
<a name="getting-started-cli"></a>

使用启动 AWS CLI 转录时，可以在 CLI 级别运行所有命令。或者，您可以运行要使用的命令，后跟包含请求正文的 JSON 文件的 AWS 区域 和位置。本指南中的示例显示了这两种方法；但是，本节重点介绍前一种方法。

 AWS CLI 不支持直播转录。

在继续操作之前，请确保您已经：
+ 已将您的媒体文件上传到 Amazon S3 存储桶中。如果您不确定如何创建 Amazon S3 存储桶或上传文件，请参阅[创建您的第一个 Amazon S3 存储桶](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-bucket.html)和[将对象上传到您的存储桶](https://docs.aws.amazon.com/AmazonS3/latest/userguide/uploading-an-object-bucket.html)。
+ 安装了 [AWS CLI](getting-started.md#getting-started-api)。

您可以在《 AWS CLI 命令[参考》 Amazon Transcribe 中找到的所有AWS CLI 命令](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/transcribe/index.html#cli-aws-transcribe)。

## 启动新的转录作业
<a name="getting-started-cli-start-job"></a>

要启动新的转录，请使用 `start-transcription-job` 命令。

1. 在终端窗口中，键入以下命令：

   ```
   aws transcribe start-transcription-job \
   ```

   下一行会出现“`>`”，您现在可以继续添加所需的参数，如下一步所述。

   您也可以忽略“`\`”并附加所有参数，用空格分隔每个参数。

1. 使用 `start-transcription-job` 命令时，必须包含 `region`、`transcription-job-name`、`media`、`language-code` 或 `identify-language`。

   如果要指定输出位置，请在请求中包含 `output-bucket-name`；如果要指定已指定的输出存储桶的子文件夹，则还要包含 `output-key`。

   ```
   aws transcribe start-transcription-job \
    --region us-west-2 \
    --transcription-job-name my-first-transcription-job \
    --media MediaFileUri=s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac \
    --language-code en-US
   ```

   如果附加所有参数，则此请求如下所示：

   ```
   aws transcribe start-transcription-job --region us-west-2 --transcription-job-name my-first-transcription-job --media MediaFileUri=s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac --language-code en-US
   ```

   如果您选择不使用 `output-bucket-name` 指定输出存储桶，则 Amazon Transcribe 会将转录输出放在服务托管存储桶中。存储在服务托管存储桶中的转录将在 90 天后过期。

   Amazon Transcribe 回复为：

   ```
   {
       "TranscriptionJob": {
           "TranscriptionJobName": "my-first-transcription-job",
           "TranscriptionJobStatus": "IN_PROGRESS",
           "LanguageCode": "en-US",
           "Media": {
               "MediaFileUri": "s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac"
           },
           "StartTime": "2022-03-07T15:03:44.246000-08:00",
           "CreationTime": "2022-03-07T15:03:44.229000-08:00"
       }
   }
   ```

如果 [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_TranscriptionJob.html#transcribe-Type-TranscriptionJob-TranscriptionJobStatus](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_TranscriptionJob.html#transcribe-Type-TranscriptionJob-TranscriptionJobStatus) 从 `IN_PROGRESS` 更改为 `COMPLETED`，则说明您的转录作业成功。要查看更新的 [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_TranscriptionJob.html#transcribe-Type-TranscriptionJob-TranscriptionJobStatus](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_TranscriptionJob.html#transcribe-Type-TranscriptionJob-TranscriptionJobStatus)，请使用 `get-transcription-job` 或 `list-transcription-job` 命令，如下一节所示。

## 获取转录作业的状态。
<a name="getting-started-cli-get-job"></a>

要获取有关转录作业的信息，请使用 `get-transcription-job` 命令。

此命令唯一必需的 AWS 区域 参数是作业所在位置和作业名称。

```
aws transcribe get-transcription-job \
 --region us-west-2 \
 --transcription-job-name my-first-transcription-job
```

Amazon Transcribe 回复为：

```
{
    "TranscriptionJob": {
        "TranscriptionJobName": "my-first-transcription-job",
        "TranscriptionJobStatus": "COMPLETED",
        "LanguageCode": "en-US",
        "MediaSampleRateHertz": 48000,
        "MediaFormat": "flac",
        "Media": {
            "MediaFileUri": "s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac"
        },
        "Transcript": {
            "TranscriptFileUri": "https://s3.the-URI-where-your-job-is-located.json"
        },
        "StartTime": "2022-03-07T15:03:44.246000-08:00",
        "CreationTime": "2022-03-07T15:03:44.229000-08:00",
        "CompletionTime": "2022-03-07T15:04:01.158000-08:00",
        "Settings": {
            "ChannelIdentification": false,
            "ShowAlternatives": false
        }
    }
}
```

如果您为转录输出选择了自己的 Amazon S3 存储桶，则此存储桶将与一起`TranscriptFileUri`列出。如果您选择了服务托管存储桶，则会提供一个临时 URI；使用此 URI 下载您的转录。

**注意**  
服务管理 Amazon S3 存储桶 URIs 的临时有效期仅为 15 分钟。如果您在使用 URI 时遇到 `AccesDenied` 错误，请再次运行 `get-transcription-job` 请求以获取新的临时 URI。

## 列出您的转录作业
<a name="getting-started-cli-list-jobs"></a>

要列出给定文件中的所有转录作业 AWS 区域，请使用`list-transcription-jobs`命令。

此命令唯一必需的参数是 AWS 区域 您的转录作业所在的参数。

```
aws transcribe list-transcription-jobs \
 --region us-west-2
```

Amazon Transcribe 回复为：

```
{
    "NextToken": "A-very-long-string",
    "TranscriptionJobSummaries": [
        {
            "TranscriptionJobName": "my-first-transcription-job",
            "CreationTime": "2022-03-07T15:03:44.229000-08:00",
            "StartTime": "2022-03-07T15:03:44.246000-08:00",
            "CompletionTime": "2022-03-07T15:04:01.158000-08:00",
            "LanguageCode": "en-US",
            "TranscriptionJobStatus": "COMPLETED",
            "OutputLocationType": "SERVICE_BUCKET"
        }        
    ]
}
```

## 删除您的转录作业
<a name="getting-started-cli-delete-job"></a>

要删除您的转录作业，请使用 `delete-transcription-job` 命令。

此命令唯一必需的 AWS 区域 参数是作业所在位置和作业名称。

```
aws transcribe delete-transcription-job \
 --region us-west-2 \
 --transcription-job-name my-first-transcription-job
```

要确认您的删除请求是否成功，您可以运行 `list-transcription-jobs` 命令。您的作业应该不会再显示在列表中。