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

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

StartStreamTranscription

启动双向 HTTP/2 或 WebSocket 其中音频将流式传输到 Amazon Transcribe,并且转录结果将流式传输到您的应用程序。

以下内容被编码为标头:

  • 语言代码:

  • 媒体encoding

  • 采样率

  • session-id

有关使用 Amazon Transcribe 流式传输的更多信息,请参阅转录流音频.

请求语法

POST /stream-transcription HTTP/2 x-amzn-transcribe-language-code: LanguageCode x-amzn-transcribe-sample-rate: MediaSampleRateHertz x-amzn-transcribe-media-encoding: MediaEncoding x-amzn-transcribe-vocabulary-name: VocabularyName x-amzn-transcribe-session-id: SessionId x-amzn-transcribe-vocabulary-filter-name: VocabularyFilterName x-amzn-transcribe-vocabulary-filter-method: VocabularyFilterMethod x-amzn-transcribe-show-speaker-label: ShowSpeakerLabel x-amzn-transcribe-enable-channel-identification: EnableChannelIdentification x-amzn-transcribe-number-of-channels: NumberOfChannels x-amzn-transcribe-enable-partial-results-stabilization: EnablePartialResultsStabilization x-amzn-transcribe-partial-results-stability: PartialResultsStability x-amzn-transcribe-content-identification-type: ContentIdentificationType x-amzn-transcribe-content-redaction-type: ContentRedactionType x-amzn-transcribe-pii-entity-types: PiiEntityTypes x-amzn-transcribe-language-model-name: LanguageModelName x-amzn-transcribe-identify-language: IdentifyLanguage x-amzn-transcribe-language-options: LanguageOptions x-amzn-transcribe-preferred-language: PreferredLanguage x-amzn-transcribe-vocabulary-names: VocabularyNames x-amzn-transcribe-vocabulary-filter-names: VocabularyFilterNames Content-type: application/json { "AudioStream": { "AudioEvent": { "AudioChunk": blob } } }

URI 请求参数

请求使用以下 URI 参数。

ContentIdentificationType

标记您的成绩单中标识的所有个人身份信息 (PII)。

内容识别在区段级别执行;PII 在中指定PiiEntityTypes在音频片段完全转录后被标记。

您不能设置,ContentIdentificationTypeContentRedactionType在同一请求中。如果两者都设置,则请求将返回BadRequestException.

有关更多信息,请参阅 。编辑或识别个人身份信息.

有效值: PII

ContentRedactionType

删除您的成绩单中标识的所有个人身份信息 (PII)。

内容编辑在区段级别执行;PII 在中指定PiiEntityTypes在音频片段完全转录后被编辑。

您不能设置,ContentRedactionTypeContentIdentificationType在同一请求中。如果两者都设置,则请求将返回BadRequestException.

有关更多信息,请参阅 。编辑或识别个人身份信息.

有效值: PII

EnableChannelIdentification

在多声道音频中启用频道识别。

频道标识会单独转录每个通道上的音频,然后将每个通道的输出附加到一个脚本中。

如果您有多声道音频但未启用频道识别,则您的音频将以连续的方式转录,并且您的成绩单不会按频道分隔。

您不能设置,ShowSpeakerLabelEnableChannelIdentification在同一请求中。如果两者都设置,则请求将返回BadRequestException.

有关更多信息,请参阅 。转录多声道音频.

EnablePartialResultsStabilization

为您的转录启用部分结果稳定。部分结果稳定可以减少输出的延迟,但可能会影响准确性。有关更多信息,请参阅 。部分结果稳定.

IdentifyLanguage
注意

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

为您的转录启用自动语言识别。

如果你包括IdentifyLanguage,您可以选择包含语言代码列表,其中一个语言代码的列表,LanguageOptions,你认为可能存在于你的音频流中。包括语言选项可以提高转录的准确性。

您还可以使用以下命令包含首选语言PreferredLanguage. 与省略此参数相比,添加首选语言可以帮助 Amazon Transcribe 更快地识别该语言。

如果您的多声道音频在每个通道上都包含不同的语言,并且您已启用频道识别,则自动语言识别会标识每个音频通道上的主导语言。

请注意,您必须包含以下任一内容LanguageCode要么IdentifyLanguage在您的请求中。如果同时包含这两个参数,则请求将失败。

流媒体语言识别不能与自定义语言模型或编辑相结合。

LanguageCode

指定表示音频中所说语言的语言代码。

如果您不确定音频中所说的语言,可以考虑使用IdentifyLanguage以启用自动语言识别。

有关 Amazon Transcribe 流媒体支持的语言列表,请参阅支持的语言:表。

有效值: en-US | en-GB | es-US | fr-CA | fr-FR | en-AU | it-IT | de-DE | pt-BR | ja-JP | ko-KR | zh-CN

LanguageModelName
注意

并非所有区域都支持自定义语言模型。

指定您要在处理您的音录时使用的自定义语言模型的名称。请注意,语言模型名称区分大小写。

指定语言模型的语言必须与您在转录请求中指定的语言代码匹配。如果语言不匹配,则不应用语言模型。没有与语言不匹配相关的错误或警告。

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

长度上限束:最小长度为 1。最大长度为 200。

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

LanguageOptions

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

包括语言选项可以提高语言识别的准确性。

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

有关 Amazon Transcribe 流媒体支持的语言列表,请参阅支持的语言:表。

重要

每个流式传输中每种语言只能包含一种语言方言。例如,您不能包括en-USen-AU在同一请求中。

长度上限束:最小长度为 1。最大长度为 200。

模式:^[a-zA-Z-,]+

MediaEncoding

指定用于输入音频的编码。支持的格式为:

  • FLAC

  • Ogg 容器中的 Opus 编码音频

  • PCM(仅有符号的 16 位小端音频格式,不包括 WAV)

有关更多信息,请参阅 。媒体格式:.

有效值: pcm | ogg-opus | flac

必需:是

MediaSampleRateHertz

输入音频的采样率(以 Hz 为单位)。低质量的音频,例如电话音频,通常在 8,000 Hz 左右。高质量音频的范围通常从 16,000 Hz 到 48,000 Hz 不等。请注意,您指定的采样率必须与音频的采样率相匹配。

有效范围:最小值为 80 0 0 0 0 0 0 0 最大值为 4800 0 0 0 0 0 0 0

必需:是

NumberOfChannels

指定音频流中通道的数量。最多支持两个通道。

有效范围:最小值为 2 0 0 0 0 0。

PartialResultsStability

指定启用部分结果稳定时要使用的稳定性级别 (EnablePartialResultsStabilization)。

低稳定性提供最高的准确率。高稳定性转录速度更快,但精度略低。

有关更多信息,请参阅 。部分结果稳定.

有效值: high | medium | low

PiiEntityTypes

指定您要在成绩单中删除哪些类型的个人身份信息 (PII)。您可以根据需要添加任意数量的类型,也可以选择ALL.

加入PiiEntityTypes在您的请求中,您还必须包含以下任一内容ContentIdentificationType要么ContentRedactionType.

值必须以逗号分隔,并且可以包括:BANK_ACCOUNT_NUMBERBANK_ROUTINGCREDIT_DEBIT_NUMBERCREDIT_DEBIT_CVVCREDIT_DEBIT_EXPIRYPINEMAILADDRESSNAMEPHONESSN,或者ALL.

长度上限束:最小长度为 1。最大长度为 300。

模式:^[A-Z_, ]+

PreferredLanguage

从您在中指定的语言代码子集中指定首选语言LanguageOptions.

只有在已包含此参数时才能使用此参数IdentifyLanguageLanguageOptions在您的请求中。

有效值: en-US | en-GB | es-US | fr-CA | fr-FR | en-AU | it-IT | de-DE | pt-BR | ja-JP | ko-KR | zh-CN

SessionId

为您的转录会话指定一个名称。如果您未在请求中包含此参数,Amazon Transcribe 将流式传输到您的请求。

您可以使用会话 ID 重试流式传输会话。

长度上限束:固定长度为 36。

模式:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}

ShowSpeakerLabel

在转录输出中启用说话人识别(二值化)。扬声器标识会在媒体文件中标记单个扬声器的语音。

有关更多信息,请参阅 。识别发言人(日记化).

VocabularyFilterMethod

指定您希望如何将词汇过滤器应用于成绩单。

将单词替换为***,选择mask.

要删除单词,请选择remove.

要在不更改单词的情况下标记单词,请选择tag.

有效值: remove | mask | tag

VocabularyFilterName

指定在处理转录时要使用的自定义词汇过滤器的名称。请注意,词汇过滤器名称区分大小写。

如果指定的自定义词汇过滤器的语言与媒体中标识的语言不匹配,则作业将失败。

重要

此参数为 1适用于IdentifyLanguage参数。如果您发送的是,IdentifyLanguage在你的请求中,如果想要在你的转录中使用一个或多个词汇过滤器,请使用VocabularyFilterNames改为参数。

有关更多信息,请参阅 。对不需要的单词使用词汇过滤.

长度上限束:最小长度为 1。最大长度为 200。

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

VocabularyFilterNames

指定在处理转录时要使用的自定义词汇过滤器的名称。请注意,词汇过滤器名称区分大小写。

如果指定的自定义词汇过滤器中没有一种语言与媒体中标识的语言匹配,则作业将失败。

重要

此参数仅供使用IdentifyLanguage参数。如果您发送的是包括IdentifyLanguage在你的请求中,如果想要对你的转录使用自定义词汇过滤器,请使用VocabularyFilterName改为参数。

有关更多信息,请参阅 。对不需要的单词使用词汇过滤.

长度上限束:最小长度为 1。长度上限为 3000 0 0 0 0

模式:^[a-zA-Z0-9,-._]+

VocabularyName

指定在处理转录时要使用的自定义词汇表的名称。请注意,词汇名称区分大小写。

如果指定的自定义词汇表的语言与媒体中标识的语言不匹配,则作业将失败。

重要

此参数为 1适用于IdentifyLanguage参数。如果您发送的是,IdentifyLanguage在你的请求中,如果想要在你的转录中使用一个或多个自定义词汇,请使用VocabularyNames改为参数。

有关更多信息,请参阅 。自定义词汇表.

长度上限束:最小长度为 1。最大长度为 200。

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

VocabularyNames

指定在处理转录时要使用的自定义词汇表的名称。请注意,词汇名称区分大小写。

如果指定的自定义词汇表中没有一种语言与媒体中标识的语言匹配,则作业将失败。

重要

此参数仅供使用IdentifyLanguage参数。如果您发送的是包括IdentifyLanguage在你的请求中,如果想要在你的转录中使用自定义词汇,请使用VocabularyName改为参数。

有关更多信息,请参阅 。自定义词汇表.

长度上限束:最小长度为 1。最大长度为 3000。

模式:^[a-zA-Z0-9,-._]+

请求正文

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

AudioStream

音频 blob 的编码流。音频流编码为 HTTP/2 或 WebSocket 数据帧。

有关更多信息,请参阅 。转录流音频.

类型:AudioStream 对象

必需:是

响应语法

HTTP/2 200 x-amzn-request-id: RequestId x-amzn-transcribe-language-code: LanguageCode x-amzn-transcribe-sample-rate: MediaSampleRateHertz x-amzn-transcribe-media-encoding: MediaEncoding x-amzn-transcribe-vocabulary-name: VocabularyName x-amzn-transcribe-session-id: SessionId x-amzn-transcribe-vocabulary-filter-name: VocabularyFilterName x-amzn-transcribe-vocabulary-filter-method: VocabularyFilterMethod x-amzn-transcribe-show-speaker-label: ShowSpeakerLabel x-amzn-transcribe-enable-channel-identification: EnableChannelIdentification x-amzn-transcribe-number-of-channels: NumberOfChannels x-amzn-transcribe-enable-partial-results-stabilization: EnablePartialResultsStabilization x-amzn-transcribe-partial-results-stability: PartialResultsStability x-amzn-transcribe-content-identification-type: ContentIdentificationType x-amzn-transcribe-content-redaction-type: ContentRedactionType x-amzn-transcribe-pii-entity-types: PiiEntityTypes x-amzn-transcribe-language-model-name: LanguageModelName x-amzn-transcribe-identify-language: IdentifyLanguage x-amzn-transcribe-language-options: LanguageOptions x-amzn-transcribe-preferred-language: PreferredLanguage x-amzn-transcribe-vocabulary-names: VocabularyNames x-amzn-transcribe-vocabulary-filter-names: VocabularyFilterNames Content-type: application/json { "TranscriptResultStream": { "BadRequestException": { }, "ConflictException": { }, "InternalFailureException": { }, "LimitExceededException": { }, "ServiceUnavailableException": { }, "TranscriptEvent": { "Transcript": { "Results": [ { "Alternatives": [ { "Entities": [ { "Category": "string", "Confidence": number, "Content": "string", "EndTime": number, "StartTime": number, "Type": "string" } ], "Items": [ { "Confidence": number, "Content": "string", "EndTime": number, "Speaker": "string", "Stable": boolean, "StartTime": number, "Type": "string", "VocabularyFilterMatch": boolean } ], "Transcript": "string" } ], "ChannelId": "string", "EndTime": number, "IsPartial": boolean, "LanguageCode": "string", "LanguageIdentification": [ { "LanguageCode": "string", "Score": number } ], "ResultId": "string", "StartTime": number } ] } } } }

响应元素

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

响应将返回以下 HTTP 标头。

ContentIdentificationType

显示是否为您的转录启用了内容标识。

有效值: PII

ContentRedactionType

显示是否对您的转录启用了内容密文。

有效值: PII

EnableChannelIdentification

显示是否为转录启用了频道标识。

EnablePartialResultsStabilization

显示您的转录是否启用了部分结果稳定功能。

IdentifyLanguage

显示是否为转录启用了自动语言识别。

LanguageCode

提供您在请求中指定的语言代码。

有效值: en-US | en-GB | es-US | fr-CA | fr-FR | en-AU | it-IT | de-DE | pt-BR | ja-JP | ko-KR | zh-CN

LanguageModelName

提供您在请求中指定的自定义语言模型的名称。

长度上限束:最小长度为 1。最大长度为 200。

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

LanguageOptions

提供您在请求中指定的语言代码。

长度上限束:最小长度为 1。最大长度为 200。

模式:^[a-zA-Z-,]+

MediaEncoding

提供您在请求中指定的媒体编码。

有效值: pcm | ogg-opus | flac

MediaSampleRateHertz

提供您在请求中指定的采样率。

有效范围:最小值为 80 0 0 0 0 0 0 0 最大值为 4800 0 0 0 0 0 0 0

NumberOfChannels

提供您在请求中指定的通道数量。

有效范围:最小值为 2 0 0 0 0 0。

PartialResultsStability

提供用于转录的稳定级别。

有效值: high | medium | low

PiiEntityTypes

列出您在请求中指定的 PII 实体类型。

长度上限束:最小长度为 1。最大长度为 300。

模式:^[A-Z_, ]+

PreferredLanguage

提供您在请求中指定的首选语言。

有效值: en-US | en-GB | es-US | fr-CA | fr-FR | en-AU | it-IT | de-DE | pt-BR | ja-JP | ko-KR | zh-CN

RequestId

提供流式请求的标识符。

SessionId

提供转录会话的标识符。

长度上限束:固定长度为 36。

模式:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}

ShowSpeakerLabel

显示是否为您的转录启用了说话人识别。

VocabularyFilterMethod

提供转录中使用的词汇过滤方法。

有效值: remove | mask | tag

VocabularyFilterName

提供您在请求中指定的自定义词汇过滤器的名称。

长度上限束:最小长度为 1。最大长度为 200。

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

VocabularyFilterNames

提供您在请求中指定的自定义词汇过滤器的名称。

长度上限束:最小长度为 1。长度上限为 3000 0 0 0 0

模式:^[a-zA-Z0-9,-._]+

VocabularyName

提供您在请求中指定的自定义词汇表的名称。

长度上限束:最小长度为 1。最大长度为 200。

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

VocabularyNames

提供您在请求中指定的自定义词汇表的名称。

长度上限束:最小长度为 1。长度上限为 3000 0 0 0 0

模式:^[a-zA-Z0-9,-._]+

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

TranscriptResultStream

提供有关流式传输会话的详细信息。

类型:TranscriptResultStream 对象

错误

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

BadRequestException

一个或多个参数StartStreamTranscription要么StartMedicalStreamTranscription操作无效。例如,MediaEncoding要么LanguageCode使用了无效的值。检查指定的参数,然后重试发送您的请求。

HTTP 状态代码:400

ConflictException

新流以相同的会话 ID 启动。当前流式处理。

HTTP 状态代码:409

InternalFailureException

处理音频时出现问题。Amazon Transcribe 已终止处理。

HTTP 状态代码:500

LimitExceededException

您的客户已超出Amazon Transcribe 限制之一。这通常是音频长度限制。将您的音频流式传输成更小的块,然后重试发送您的请求。

HTTP 状态代码:429

ServiceUnavailableException

服务目前不可用。稍后尝试您的请求。

HTTP 状态代码:503

另请参阅

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