StartTranscriptionJob - 转录
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

StartTranscriptionJob

转录媒体文件中的音频并应用您选择包含在请求中的任何其他请求参数。

为了制作StartTranscriptionJob请求时,您必须首先将媒体文件上传到 Amazon S3 存储桶中;然后,您可以使用Media参数。

您必须将以下参数包含在您的StartTranscriptionJob请求:

  • region: 该Amazon Web Services 区域你在哪里提出要求。对于列表Amazon Web Services 区域亚马逊 Transcribe 支持,请参阅Amazon Transcribe 终端节点和配额.

  • TranscriptionJobName:你为你的转录作业创建的自定义名称,在你的Amazon Web Services 账户.

  • Media(MediaFileUri):媒体文件的 Amazon S3 位置。

  • 其中的一个LanguageCodeIdentifyLanguage,或者IdentifyMultipleLanguages:如果你知道媒体文件的语言,请使用LanguageCode参数;你可以在支持的语言表。如果您不知道媒体中使用的语言,请使用其中一种IdentifyLanguage要么IdentifyMultipleLanguages然后让 Amazon Transcribe 为你识别语言。

请求语法

{ "ContentRedaction": { "PiiEntityTypes": [ "string" ], "RedactionOutput": "string", "RedactionType": "string" }, "IdentifyLanguage": boolean, "IdentifyMultipleLanguages": boolean, "JobExecutionSettings": { "AllowDeferredExecution": boolean, "DataAccessRoleArn": "string" }, "KMSEncryptionContext": { "string" : "string" }, "LanguageCode": "string", "LanguageIdSettings": { "string" : { "LanguageModelName": "string", "VocabularyFilterName": "string", "VocabularyName": "string" } }, "LanguageOptions": [ "string" ], "Media": { "MediaFileUri": "string" }, "MediaFormat": "string", "MediaSampleRateHertz": number, "ModelSettings": { "LanguageModelName": "string" }, "OutputBucketName": "string", "OutputEncryptionKMSKeyId": "string", "OutputKey": "string", "Settings": { "ChannelIdentification": boolean, "MaxAlternatives": number, "MaxSpeakerLabels": number, "ShowAlternatives": boolean, "ShowSpeakerLabels": boolean, "VocabularyFilterMethod": "string", "VocabularyFilterName": "string", "VocabularyName": "string" }, "Subtitles": { "Formats": [ "string" ], "OutputStartIndex": number }, "Tags": [ { "Key": "string", "Value": "string" } ], "TranscriptionJobName": "string" }

请求参数

有关所有操作通用的参数的信息,请参阅常见参数.

请求接受采用 JSON 格式的以下数据。

ContentRedaction
注意

并非所有区域都支持密文。

允许您在成绩单中编辑或标记指定的个人身份信息 (PII)。如果您使用ContentRedaction,您还必须包含子参数:PiiEntityTypesRedactionOutput, 和RedactionType.

类型:ContentRedaction 对象

:必需 否

IdentifyLanguage
注意

并非所有区域都支持语言识别。

在转录作业请求中启用自动语言识别功能。如果您的媒体文件只包含一种语言,请使用此参数。如果你的媒体包含多种语言,请使用IdentifyMultipleLanguages相反。

如果你包括IdentifyLanguage,您可以选择包含语言代码的列表,LanguageOptions,你认为可能存在于你的媒体文件中。包括LanguageOptions限制IdentifyLanguage只有你指定的语言选项,这可以提高转录准确性。

如果您想将自定义语言模型、自定义词汇或自定义词汇过滤器应用于自动语言识别请求,请包括LanguageIdSettings带有相关的子参数 (VocabularyNameLanguageModelName, 和VocabularyFilterName)。如果你包括LanguageIdSettings,还包括LanguageOptions.

请注意,您必须包含其中一个LanguageCodeIdentifyLanguage,或者IdentifyMultipleLanguages请求中。如果包含其中一个以上参数,则转录作业将失败。

类型: 布尔值

:必需 否

IdentifyMultipleLanguages
注意

并非所有区域都支持语言识别。

在转录作业请求中启用自动多语言识别功能。如果您的媒体文件包含多种语言,请使用此参数。如果你的媒体只包含一种语言,请使用IdentifyLanguage相反。

如果你包括IdentifyMultipleLanguages,您可以选择包含语言代码的列表,LanguageOptions,你认为可能存在于你的媒体文件中。包括LanguageOptions限制IdentifyLanguage只有你指定的语言选项,这可以提高转录准确性。

如果你想在自动语言识别请求中应用自定义词汇或自定义词汇过滤器,请包括LanguageIdSettings带有相关的子参数 (VocabularyNameVocabularyFilterName)。如果你包括LanguageIdSettings,还包括LanguageOptions.

请注意,您必须包含其中一个LanguageCodeIdentifyLanguage,或者IdentifyMultipleLanguages请求中。如果包含其中一个以上参数,则转录作业将失败。

类型: 布尔值

:必需 否

JobExecutionSettings

允许您控制转录作业的处理方式。目前,唯一JobExecutionSettings你可以选择的修改是使用AllowDeferredExecution子参数。

如果你包括JobExecutionSettings在您的请求中,您还必须包含子参数:AllowDeferredExecutionDataAccessRoleArn.

类型:JobExecutionSettings 对象

:必需 否

KMSEncryptionContext

纯文本、非秘密密钥:值对(称为加密上下文对)的映射,为您的数据提供了额外的安全层。有关更多信息,请参阅 。Amazon KMS加密上下文中的非对称密钥Amazon KMS.

类型: 字符串到字符串映射

地图条目:最多 10 项。

密钥长度限制:最小长度为 1。长度上限为 2000。

密钥模式:.*\S.*

值长度限制:最小长度为 1。长度上限为 2000。

价值模式:.*\S.*

:必需 否

LanguageCode

表示输入媒体文件中使用的语言的语言的语言代码。

如果你不确定媒体文件中使用的语言,请考虑使用IdentifyLanguage要么IdentifyMultipleLanguages以启用自动语言识别。

请注意,您必须包含其中一个LanguageCodeIdentifyLanguage,或者IdentifyMultipleLanguages请求中。如果包含其中一个以上参数,则转录作业将失败。

有关受支持的语言及其相关语言代码的列表,请参阅支持的语言表。

注意

用现代标准阿拉伯语转录语音 (ar-SA),您的媒体文件必须以 16,000 Hz 或更高的采样率进行编码。

类型: 字符串

有效值: af-ZA | ar-AE | ar-SA | cy-GB | da-DK | de-CH | de-DE | en-AB | en-AU | en-GB | en-IE | en-IN | en-US | en-WL | es-ES | es-US | fa-IR | fr-CA | fr-FR | ga-IE | gd-GB | he-IL | hi-IN | id-ID | it-IT | ja-JP | ko-KR | ms-MY | nl-NL | pt-BR | pt-PT | ru-RU | ta-IN | te-IN | tr-TR | zh-CN | zh-TW | th-TH | en-ZA | en-NZ

:必需 否

LanguageIdSettings

如果在请求中使用自动语言识别并且想要应用自定义语言模型、自定义词汇或自定义词汇过滤器,请包括LanguageIdSettings带有相关的子参数 (VocabularyNameLanguageModelName, 和VocabularyFilterName)。请注意,多语言识别(IdentifyMultipleLanguages) 不支持自定义语言模型。

LanguageIdSettings支持两到五种语言代码。您包含的每种语言代码都可以有关联的自定义语言模型、自定义词汇和自定义词汇过滤器。您指定的语言代码必须与关联的自定义语言模型、自定义词汇表和自定义词汇过滤器的语言匹配。

强烈建议你包括LanguageOptions使用时LanguageIdSettings以确保识别正确的语言方言。例如,如果您指定的自定义词汇表en-US但是 Amazon Transcribe 确定你的媒体中使用的语言是en-AU,你的自定义词汇不是应用于你的转录。如果你包括LanguageOptions并包括en-US作为唯一的英语方言,你的自定义词汇应用于你的转录。

如果你想在请求中包含自定义语言模型但不要想要使用自动语言识别,请改用 ModelSettings 带有的参数LanguageModelName子参数。如果你想在你的请求中包含自定义词汇或自定义词汇过滤器(或两者),但不要想要使用自动语言识别,请改用 Settings 带有的参数VocabularyName要么VocabularyFilterName(或两者兼有)子参数。

类型: To StringLanguageIdSettings对象映射

地图条目:最多 5 项。

有效密钥: af-ZA | ar-AE | ar-SA | cy-GB | da-DK | de-CH | de-DE | en-AB | en-AU | en-GB | en-IE | en-IN | en-US | en-WL | es-ES | es-US | fa-IR | fr-CA | fr-FR | ga-IE | gd-GB | he-IL | hi-IN | id-ID | it-IT | ja-JP | ko-KR | ms-MY | nl-NL | pt-BR | pt-PT | ru-RU | ta-IN | te-IN | tr-TR | zh-CN | zh-TW | th-TH | en-ZA | en-NZ

:必需 否

LanguageOptions

您可以指定两个或更多语言代码来表示您认为媒体中可能存在的语言;不建议包括五种以上的语言代码。如果你不确定存在什么语言,请不要包含此参数。

如果你包括LanguageOptions在您的请求中,您还必须包含IdentifyLanguage.

有关更多信息,请参阅支持的语言.

用现代标准阿拉伯语转录语音 (ar-SA),您的媒体文件必须以 16,000 Hz 或更高的采样率进行编码。

类型: 字符串数组

Array 成员:最少 1 项。

有效值: af-ZA | ar-AE | ar-SA | cy-GB | da-DK | de-CH | de-DE | en-AB | en-AU | en-GB | en-IE | en-IN | en-US | en-WL | es-ES | es-US | fa-IR | fr-CA | fr-FR | ga-IE | gd-GB | he-IL | hi-IN | id-ID | it-IT | ja-JP | ko-KR | ms-MY | nl-NL | pt-BR | pt-PT | ru-RU | ta-IN | te-IN | tr-TR | zh-CN | zh-TW | th-TH | en-ZA | en-NZ

:必需 否

Media

描述要在请求中使用的媒体文件的 Amazon S3 位置。

类型:Media 对象

:必需 是

MediaFormat

指定输入媒体文件的格式。

类型: 字符串

有效值: mp3 | mp4 | wav | flac | ogg | amr | webm

:必需 否

MediaSampleRateHertz

媒体输入文件中音频的采样率(赫兹)。

如果您没有指定媒体采样率,Amazon Transcribe 会为您确定。如果您指定采样率,则必须与 Amazon Transcribe 检测到的速率相匹配;如果您指定的值与检测到的值不匹配,则您的作业将失败。因此,在大多数情况下,建议省略MediaSampleRateHertz然后让 Amazon Transcribe 确定采样率。

类型: 整数

有效范围:最小值为 8000。最大值为 48000。

:必需 否

ModelSettings

指定要包含在转录作业中的自定义语言模型。如果你包括ModelSettings在您的请求中,您必须包含LanguageModelName子参数。

有关更多信息,请参阅 。自定义语言模型.

类型:ModelSettings 对象

:必需 否

OutputBucketName

要存储转录输出的 Amazon S3 存储桶的名称。请勿包括S3://指定存储桶的前缀。

如果您希望输出转至此存储桶的子文件夹,请使用OutputKey参数;OutputBucketName只接受存储桶的名称。

例如,如果你想将输出存储在S3://DOC-EXAMPLE-BUCKET设置OutputBucketNameDOC-EXAMPLE-BUCKET. 但是,如果你想将输出存储在S3://DOC-EXAMPLE-BUCKET/test-files/设置OutputBucketNameDOC-EXAMPLE-BUCKETOutputKeytest-files/.

请注意,Amazon Transcribe 必须拥有使用指定位置的权限。Amazon S3 可以使用Amazon Web Services Management Console. 另请参阅IAM 用户角色所需的权限.

如果您没有指定OutputBucketName,您的成绩单被放置在服务管理的 Amazon S3 存储桶中,您将获得访问成绩单的 URI。

类型: 字符串

长度约束:最大长度为 64。

模式:[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]

:必需 否

OutputEncryptionKMSKeyId

要用于加密转录输出的 KMS 密钥。

如果使用位于当前的 Amazon Web Services 账户,您可以通过以下四种方法之一指定 KMS 密钥:

  1. 使用 KMS 密钥 ID 本身。例如,1234abcd-12ab-34cd-56ef-1234567890ab

  2. 使用别名作为 KMS 密钥 ID。例如,alias/ExampleAlias

  3. 使用 Amazon 资源名称 (ARN) 作为 KMS 密钥 ID。例如,arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab

  4. 使用 ARN 作为 KMS 密钥别名。例如,arn:aws:kms:region:account-ID:alias/ExampleAlias

如果使用位于不同的 Amazon Web Services 账户比现在Amazon Web Services 账户,您可以通过以下两种方法之一指定 KMS 密钥:

  1. 使用 ARN 作为 KMS 密钥 ID。例如,arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab

  2. 使用 ARN 作为 KMS 密钥别名。例如,arn:aws:kms:region:account-ID:alias/ExampleAlias

如果您未指定加密密钥,则将使用默认 Amazon S3 密钥 (SSE-S3) 对您的输出进行加密。

如果您指定 KMS 密钥来加密输出,则还必须使用OutputLocation参数。

请注意,用户制作StartCallAnalyticsJob请求必须拥有使用指定 KMS 密钥的权限。

类型: 字符串

长度约束:最小长度为 1。长度上限为 2048。

模式:^[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,2048}$

:必需 否

OutputKey

配合使用OutputBucketName以指定成绩单的输出位置以及输出文件的唯一名称(可选)。转录输出的默认名称与您为转录作业指定的名称相同(TranscriptionJobName)。

下面是说明如何使用的一些示例OutputKey

  • 如果您将 “DOC-EXAMPLE-BUCKET” 指定为OutputBucketName和 'my-transcript.json' 作为OutputKey,你的转录输出路径是s3://DOC-EXAMPLE-BUCKET/my-transcript.json.

  • 如果你指定 “我的第一个转录” 作为TranscriptionJobName、“DOC-例子存储桶” 作为OutputBucketName,以及 “我的成绩单” 作为OutputKey,你的转录输出路径是s3://DOC-EXAMPLE-BUCKET/my-transcript/my-first-transcription.json.

  • 如果您将 “DOC-EXAMPLE-BUCKET” 指定为OutputBucketName和 '测试文件 /my-transcript.json' 作为OutputKey,你的转录输出路径是s3://DOC-EXAMPLE-BUCKET/test-files/my-transcript.json.

  • 如果你将 “我的第一个转录” 指定为TranscriptionJobName、“DOC-例子存储桶” 作为OutputBucketName和 “测试文件/我的成绩单” 作为OutputKey,你的转录输出路径是s3://DOC-EXAMPLE-BUCKET/test-files/my-transcript/my-first-transcription.json.

如果您指定了不存在的 Amazon S3 存储桶子文件夹的名称,则会为您创建一个子文件夹。

类型: 字符串

长度约束:最小长度为 1。长度上限为 1024。

模式:[a-zA-Z0-9-_.!*'()/]{1,1024}$

:必需 否

Settings

在您的StartTranscriptionJob请求,包括频道识别、替代转录、扬声器标签;允许您应用自定义词汇和词汇过滤器。

如果你想在你的请求中包含自定义词汇或自定义词汇过滤器(或两者),但不要想要使用自动语言识别,请使用Settings使用VocabularyName要么VocabularyFilterName(或两者兼有)子参数。

如果您在请求中使用自动语言识别并且想要包含自定义语言模型、自定义词汇或自定义词汇过滤器,请改用 LanguageIdSettings 带有的参数LanguageModelNameVocabularyName要么VocabularyFilterName子参数。

类型:Settings 对象

:必需 否

Subtitles

为输入媒体生成字幕文件。您可以指定 WebVTT (*.vtt) 和 Subrip (*.srt) 格式。

类型:Subtitles 对象

:必需 否

Tags

在开始此新作业时,将一个或多个自定义标签(每个标签以 key: value 对的形式)添加到新的转录作业中。

要了解有关将标签与 Amazon Transcribe 配合使用的更多信息,请参阅为资源添加标签.

类型: 数组Tag对象

Array 成员:最少 1 项。最多 200 项。

:必需 否

TranscriptionJobName

你为你的转录工作选择的唯一名称。您指定的名称也用作转录输出文件的默认名称。如果您要为转录输出指定其他名称,请使用OutputKey参数。

此名称区分大小写,不能包含空格,且必须在Amazon Web Services 账户. 如果您尝试创建与现有作业具有相同的名称的新作业,则将获得ConflictException错误消息。

类型: 字符串

长度约束:最小长度为 1。最大长度为 200。

模式:^[0-9a-zA-Z._-]+

:必需 是

响应语法

{ "TranscriptionJob": { "CompletionTime": number, "ContentRedaction": { "PiiEntityTypes": [ "string" ], "RedactionOutput": "string", "RedactionType": "string" }, "CreationTime": number, "FailureReason": "string", "IdentifiedLanguageScore": number, "IdentifyLanguage": boolean, "IdentifyMultipleLanguages": boolean, "JobExecutionSettings": { "AllowDeferredExecution": boolean, "DataAccessRoleArn": "string" }, "LanguageCode": "string", "LanguageCodes": [ { "DurationInSeconds": number, "LanguageCode": "string" } ], "LanguageIdSettings": { "string" : { "LanguageModelName": "string", "VocabularyFilterName": "string", "VocabularyName": "string" } }, "LanguageOptions": [ "string" ], "Media": { "MediaFileUri": "string" }, "MediaFormat": "string", "MediaSampleRateHertz": number, "ModelSettings": { "LanguageModelName": "string" }, "Settings": { "ChannelIdentification": boolean, "MaxAlternatives": number, "MaxSpeakerLabels": number, "ShowAlternatives": boolean, "ShowSpeakerLabels": boolean, "VocabularyFilterMethod": "string", "VocabularyFilterName": "string", "VocabularyName": "string" }, "StartTime": number, "Subtitles": { "Formats": [ "string" ], "OutputStartIndex": number, "SubtitleFileUris": [ "string" ] }, "Tags": [ { "Key": "string", "Value": "string" } ], "Transcript": { "RedactedTranscriptFileUri": "string", "TranscriptFileUri": "string" }, "TranscriptionJobName": "string", "TranscriptionJobStatus": "string" } }

响应元素

如果此操作成功,则该服务将会发送回 HTTP 200 响应。

服务以 JSON 格式返回的以下数据。

TranscriptionJob

提供有关当前转录作业的详细信息,包括作业状态以及失败原因(如果适用)。

类型:TranscriptionJob 对象

错误

有关所有操作常见错误的信息,请参阅常见错误.

BadRequestException

您的请求没有通过一个或多个验证测试。当您尝试删除的实体不存在或处于非终端状态时(例如),可能会发生这种情况IN PROGRESS)。有关更多信息,请参阅例外消息字段。

HTTP 状态代码:400

ConflictException

已存在具有此名称的资源。资源名称必须唯一的Amazon Web Services 账户.

HTTP 状态代码:400

InternalFailureException

发生内部服务器错误。检查错误消息,更正问题,然后再次尝试请求。

HTTP 状态代码:500

LimitExceededException

您已经发送过多的请求或您的输入文件过长。等待,然后再重试您的请求,或使用较小的文件,然后再次尝试请求。

HTTP 状态代码:400

另请参阅

有关在特定语言的 Amazon 软件开发工具包中使用此 API 的更多信息,请参阅以下内容: