本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
StartCallAnalyticsStreamTranscription
启动双向 HTTP/2 或 WebSocket 流式传输其中音频将流式传输到 Amazon Transcribe,并且转录结果将流式传输到您的应用程序。使用此操作进行呼叫分析转录。
以下参数为必需参数:
-
language-code
-
media-encoding
-
sample-rate
有关使用 Amazon Transcribe 进行直播的更多信息,请参阅转录流媒体音频。
请求语法
POST /call-analytics-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-language-model-name: LanguageModelName
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
Content-type: application/json
{
"AudioStream": {
"AudioEvent": {
"AudioChunk": blob
},
"ConfigurationEvent": {
"ChannelDefinitions": [
{
"ChannelId": number
,
"ParticipantRole": "string
"
}
],
"PostCallAnalyticsSettings": {
"ContentRedactionOutput": "string
",
"DataAccessRoleArn": "string
",
"OutputEncryptionKMSKeyId": "string
",
"OutputLocation": "string
"
}
}
}
}
URI 请求参数
请求使用以下 URI 参数。
- ContentIdentificationType
-
为您的成绩单中标识的所有个人身份信息(PII)中的所有个人身份信息(PII)。
内容识别在区段级别执行;在音频片段完成转录后,会标记中指定
PiiEntityTypes
的 PII。您无法在同一个请求
ContentRedactionType
中设置ContentIdentificationType
和。如果您同时设置了这两者,则您的请求将返回 aBadRequestException
。有关更多信息,请参阅编辑或识别个人身份信息。
有效值:
PII
- ContentRedactionType
-
编辑您的成绩单中标识的所有个人身份信息(PII)中标识的所有个人身份信息(PII)。
内容编辑在片段级别执行;中指定
PiiEntityTypes
的 PII 将在音频片段完成转录后进行编辑。您无法在同一个请求
ContentIdentificationType
中设置ContentRedactionType
和。如果您同时设置了这两者,则您的请求将返回 aBadRequestException
。有关更多信息,请参阅编辑或识别个人身份信息。
有效值:
PII
- EnablePartialResultsStabilization
-
支持稳定转录的部分结果。部分结果稳定可以减少输出延迟,但可能会影响准确性。有关更多信息,请参阅部分结果稳定。
- LanguageCode
-
指定代表音频中所说语言的语言代码。
如果您不确定音频中所说的语言,可以考虑使用
IdentifyLanguage
来启用自动语言识别。有关实时呼叫分析支持的语言列表,请参阅支持的语言表。
有效值:
en-US | en-GB | es-US | fr-CA | fr-FR | en-AU | it-IT | de-DE | pt-BR
必需:是
- LanguageModelName
-
指定处理转录时要使用的自定义语言模型的名称。请注意,语言模型名称区分大小写。
指定语言模型的语言必须与您在转录请求中指定的语言代码相匹配。如果语言不匹配,则不应用自定义语言模型。不存在与语言不匹配相关的错误或警告。
有关更多信息,请参阅自定义语言模型。
长度限制:最小长度为 1。最大长度为 200。
模式:
^[0-9a-zA-Z._-]+
- MediaEncoding
-
指定输入音频的编码。支持的格式为:
-
FLAC
-
Ogg 容器中的 Opus 编码音频
-
PCM(仅限签名的 16 位小端音频格式,不包括 WAV)
有关更多信息,请参阅媒体格式。
有效值:
pcm | ogg-opus | flac
必需:是
-
- MediaSampleRateHertz
-
输入音频的采样率(以赫兹为单位)。低质量音频,例如电话音频,通常在 8,000 Hz 左右。高质量音频的频率通常介于 16,000 Hz 到 48,000 Hz 之间。请注意,您指定的采样率必须与音频的采样率相匹配。
有效范围:最小值为 8000。最大值为 48000。
必需:是
- PartialResultsStability
-
指定启用局部结果稳定性时要使用的稳定级别 (
EnablePartialResultsStabilization
)。低稳定性可提供最高的精度。高稳定性转录速度更快,但精度略低。
有关更多信息,请参阅部分结果稳定。
有效值:
high | medium | low
- PiiEntityTypes
-
指定要在成绩单中编辑哪些类型的个人身份信息 (PII)。您可以根据需要添加任意数量的类型,也可以选择
ALL
。要包含
PiiEntityTypes
在您的呼叫分析请求中,您还必须包含ContentIdentificationType
或ContentRedactionType
。值必须以逗号分隔,可以包括:
ADDRESS
BANK_ACCOUNT_NUMBER
、BANK_ROUTING
、CREDIT_DEBIT_CVV
、CREDIT_DEBIT_EXPIRY
、CREDIT_DEBIT_NUMBER
、EMAIL
、NAME
、PHONE
、PIN
、SSN
、或ALL
。长度限制:最小长度为 1。最大长度为 300。
模式:
^[A-Z_, ]+
- 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}
- VocabularyFilterMethod
-
指定您希望如何将词汇过滤器应用于成绩单。
要将单词替换为
***
,请选择mask
。要删除字词,请选择
remove
。要标记单词而不对其进行更改,请选择
tag
。有效值:
remove | mask | tag
- VocabularyFilterName
-
指定处理转录时要使用的自定义词汇过滤器的名称。请注意,词汇过滤器名称区分大小写。
如果指定的自定义词汇过滤器的语言与您的媒体中识别的语言不匹配,则词汇过滤器不会应用于您的转录。
有关更多信息,请参阅对不想要的单词使用词汇过滤。
长度限制:最小长度为 1。最大长度为 200。
模式:
^[0-9a-zA-Z._-]+
- VocabularyName
-
指定处理转录时要使用的自定义词汇的名称。请注意,词汇名称区分大小写。
如果指定的自定义词汇表的语言与您的媒体中标识的语言不匹配,则自定义词汇不会应用于您的转录。
有关更多信息,请参阅自定义词汇表。
长度限制:最小长度为 1。最大长度为 200。
模式:
^[0-9a-zA-Z._-]+
请求正文
请求接受采用 JSON 格式的以下数据。
- AudioStream
-
经过编码的音频 blob 流。音频流编码为 HTTP/2 或 WebSocket 数据帧。
有关更多信息,请参阅转录流式传输音频。
类型:CallAnalyticsAudioStream 对象
必需:是
响应语法
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-language-model-name: LanguageModelName
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
Content-type: application/json
{
"CallAnalyticsTranscriptResultStream": {
"BadRequestException": {
},
"CategoryEvent": {
"MatchedCategories": [ "string" ],
"MatchedDetails": {
"string" : {
"TimestampRanges": [
{
"BeginOffsetMillis": number,
"EndOffsetMillis": number
}
]
}
}
},
"ConflictException": {
},
"InternalFailureException": {
},
"LimitExceededException": {
},
"ServiceUnavailableException": {
},
"UtteranceEvent": {
"BeginOffsetMillis": number,
"EndOffsetMillis": number,
"Entities": [
{
"BeginOffsetMillis": number,
"Category": "string",
"Confidence": number,
"Content": "string",
"EndOffsetMillis": number,
"Type": "string"
}
],
"IsPartial": boolean,
"IssuesDetected": [
{
"CharacterOffsets": {
"Begin": number,
"End": number
}
}
],
"Items": [
{
"BeginOffsetMillis": number,
"Confidence": number,
"Content": "string",
"EndOffsetMillis": number,
"Stable": boolean,
"Type": "string",
"VocabularyFilterMatch": boolean
}
],
"ParticipantRole": "string",
"Sentiment": "string",
"Transcript": "string",
"UtteranceId": "string"
}
}
}
响应元素
如果此操作成功,则该服务将会发送回 HTTP 200 响应。
响应将返回以下 HTTP 标头。
- ContentIdentificationType
-
显示您的 Call Analytics 转录是否启用了内容识别。
有效值:
PII
- ContentRedactionType
-
显示您的 Call Analytics 转录是否启用了内容编辑。
有效值:
PII
- EnablePartialResultsStabilization
-
显示您的 Call Analytics 转录是否启用了部分结果稳定功能。
- LanguageCode
-
提供您在呼叫分析请求中指定的语言代码。
有效值:
en-US | en-GB | es-US | fr-CA | fr-FR | en-AU | it-IT | de-DE | pt-BR
- LanguageModelName
-
提供您在呼叫分析请求中指定的自定义语言模型的名称。
长度限制:最小长度为 1。最大长度为 200。
模式:
^[0-9a-zA-Z._-]+
- MediaEncoding
-
提供您在呼叫分析请求中指定的媒体编码。
有效值:
pcm | ogg-opus | flac
- MediaSampleRateHertz
-
提供您在呼叫分析请求中指定的采样率。
有效范围:最小值为 8000。最大值为 48000。
- PartialResultsStability
-
提供用于转录的稳定级别。
有效值:
high | medium | low
- PiiEntityTypes
-
列出您在呼叫分析请求中指定的 PII 实体类型。
长度限制:最小长度为 1。最大长度为 300。
模式:
^[A-Z_, ]+
- 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}
- VocabularyFilterMethod
-
提供 Call Analytics 转录中使用的词汇过滤方法。
有效值:
remove | mask | tag
- VocabularyFilterName
-
提供您在呼叫分析请求中指定的自定义词汇过滤器的名称。
长度限制:最小长度为 1。最大长度为 200。
模式:
^[0-9a-zA-Z._-]+
- VocabularyName
-
提供您在呼叫分析请求中指定的自定义词汇的名称。
长度限制:最小长度为 1。最大长度为 200。
模式:
^[0-9a-zA-Z._-]+
服务以 JSON 格式返回的以下数据。
- CallAnalyticsTranscriptResultStream
-
提供有关您的实时呼叫分析会话的详细信息。
错误
有关所有操作常见错误的信息,请参阅常见错误。
- BadRequestException
-
StartStreamTranscription
、StartMedicalStreamTranscription
或StartCallAnalyticsStreamTranscription
操作的一个或多个参数无效。例如,MediaEncoding
或LanguageCode
使用了不支持的值。检查指定的参数,然后重试您的请求。HTTP 状态代码:400
- ConflictException
-
一个新的直播以相同的会话 ID 开始。当前直播已终止。
HTTP 状态代码:409
- InternalFailureException
-
处理音频时出现问题。Amazon Transcribe 已终止处理。
HTTP 状态代码:500
- LimitExceededException
-
您的客户已超过Amazon Transcribe 其中一个限制。这通常是音频长度限制。将您的音频流分成小块,然后重试您的请求。
HTTP 状态代码:429
- ServiceUnavailableException
-
服务目前无法使用。稍后尝试您的请求。
HTTP 状态代码:503
另请参阅
有关在特定语言的 AWS 软件开发工具包中使用此 API 的更多信息,请参阅以下内容: