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

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

StartStreamTranscription

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

以下内容被编码为 HTTP/2 标头:

  • x-amzn-转录语言代码

  • x-amzn 转录媒体编码

  • x-amzn-转录码样品率

  • x-amzn-转录码会话 ID

请参阅适用于 SDK for Go API 参考有关更多详细信息。

请求语法

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 Content-type: application/json { "AudioStream": { "AudioEvent": { "AudioChunk": blob } } }

URI 请求参数

请求使用以下 URI 参数。

ContentIdentificationType

将此字段设置为 PII 以识别转录输出中的个人身份信息 (PII)。只有在完成音频片段转录后才能进行内容识别。

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

有效值: PII

ContentRedactionType

将此字段设置为 PII 以对转录输出中的个人身份信息 (PII) 进行密文件。只有在完成音频片段转录后才能执行内容密文。

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

有效值: PII

EnableChannelIdentification

何时true,指示 Amazon Transcribe 分别处理每个音频频道,然后将每个频道的转录输出合并为单个转录。

Amazon Transcribe 还会为每件商品制作转录。项目包括开始时间、结束时间和任何替代转录。

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

EnablePartialResultsStabilization

何时true,指示 Amazon Transcribe 呈现部分结果稳定的转录结果。通常,一个部分结果中的任何单词或短语可能会在后续的部分结果中发生变化。启用部分结果稳定后,只有一个部分结果的最后几个字才能在另一个部分结果中发生变化。

IdentifyLanguage

可选。将该值设置为true为您的媒体直播启用语言识别功能。

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

包含音频中可能存在的语言列表的对象。

您必须提供两个或更多语言代码,以帮助 Amazon Transcribe 以尽可能高的准确性识别您的媒体流的正确语言。每种语言只能选择一个变体;例如,不能同时包含两种变体。en-USen-UK在同一请求中。

只有在已设置之后才能使用此参数IdentifyLanguagetrue在您的请求中。

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

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

MediaEncoding

用于输入音频的编码。

有效值: pcm | ogg-opus | flac

:必需 是

MediaSampleRateHertz

输入音频的采样率(赫兹)。我们建议您对低质量音频使用 8,000 Hz,对于高质量音频,使用 16,000 Hz 或更高音频。

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

:必需 是

NumberOfChannels

音频流中的频道数量。

有效范围:最小值为 2。

PartialResultsStability

您可以使用此字段来设置转录结果的稳定性级别。稳定性水平越高意味着转录结果不太可能改变。更高的稳定性水平可能会带来较低的整体转录准确度。

有效值: high | medium | low

PiiEntityTypes

列出要识别或编辑的 PII 实体类型。为了指定实体类型,您必须有ContentIdentificationType要么ContentRedactionType已启用.

PIIEntityTypes必须以逗号分隔;可用值为:BANK_ACCOUNT_NUMBERBANK_ROUTINGCREDIT_DEBIT_NUMBERCREDIT_DEBIT_CVVCREDIT_DEBIT_EXPIRYPINEMAILADDRESSNAMEPHONESSN, 和ALL.

PiiEntityTypes是一个可选参数,默认值为ALL.

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

模式:^[A-Z_, ]+

PreferredLanguage

可选。来自你提供的语言代码子集LanguageOptions,您可以为转录选择一种首选语言。

只有在已设置之后才能使用此参数IdentifyLanguagetrue在您的请求中。

有效值: 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

转录会话的标识符。如果要重试会话,请使用此参数。如果您未提供会话 ID,Amazon Transcribe 将为您生成一个并在响应中返回它。

约束:固定长度为 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

何时true,启用媒体流中的扬声器识别功能。

VocabularyFilterMethod

使用词汇过滤器过滤成绩单中单词的方式。Remove从转录结果中删除筛选的词汇表。Mask***在您的转录结果中。Tag将过滤的单词保留在转录结果中并标记它们。该标签显示为VocabularyFilterMatch等于True.

有效值: remove | mask | tag

VocabularyFilterName

您已经创建的对于您的账户唯一的词汇过滤器的名称。在此字段中提供名称以在直播中成功使用该名称。

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

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

VocabularyName

处理转录任务时使用的词汇表的名称。

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

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

请求正文

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

AudioStream

通过 PCM 编码的音频 blob 流。音频流被编码为 HTTP/2 数据帧。

类型: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 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

输入音频流的采样率。对于低质量音频使用 8,000 Hz,对于高质量音频使用 16,000 Hz 或更高。

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

NumberOfChannels

直播中识别的频道数量。

有效范围:最小值为 2。

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._-]+

VocabularyName

处理流时使用的词汇表的名称。

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

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

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

TranscriptResultStream

表示从 Amazon Transcribe 到您的应用程序的转录事件。

类型:TranscriptResultStream 对象

Errors

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

BadRequestException

一个或多个参数StartStreamTranscription要么StartMedicalStreamTranscription操作无效。例如,MediaEncoding未设置为有效的编码,或者LanguageCode未设置为有效的代码。检查参数并再次尝试请求。

HTTP 状态代码:400

ConflictException

一个新的直播以相同的会话 ID 开始。当前直播已被终止。

HTTP 状态代码:409

InternalFailureException

处理音频时出现问题。Amazon Transcribe 或 Amazon Transcribe 医疗已终止处理。请再次尝试您的请求。

HTTP 状态代码:500

LimitExceededException

您已超过并发转录流的最大数量、启动转录流的速度太快,或者最大音频长度为 4 小时。等到直播完成处理,或者将音频流分成更小的块,然后再试一次请求。

HTTP 状态代码:429

ServiceUnavailableException

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

HTTP 状态代码:503

另请参阅

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