软件包 google.cloud.mediatranslation.v1beta1

索引

SpeechTranslationService

提供媒体类型的翻译。

StreamingTranslateSpeech

rpc StreamingTranslateSpeech(StreamingTranslateSpeechRequest) returns (StreamingTranslateSpeechResponse)

执行双向流式语音翻译:在发送音频时接收结果。此方法只能通过 gRPC API 使用,REST 不支持此方法。

授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证概览

StreamingTranslateSpeechConfig

用于流式翻译的配置。

字段
audio_config

TranslateSpeechConfig

必需。这是用于以下所有音频内容的通用配置。

single_utterance

bool

可选。如果为 false 或省略,系统将执行连续翻译(即使用户暂停说话也继续等待和处理音频),直到客户端关闭输入流 (gRPC API) 或达到最大时间限制。可能会返回 is_final 标志设置为 true 的多个 StreamingTranslateSpeechResult

如果为 true,则语音翻译器将检测单独一条话语。如果它检测到用户已暂停或停止说话,将返回 END_OF_SINGLE_UTTERANCE 事件并停止翻译。当客户端收到“END_OF_SINGLE_UTTERANCE”事件时,客户端应停止发送请求。但客户端应继续接收剩余响应,直到流终止为止。要以流式方式构造完整的句子,则应采用替换(如果前一响应的“is_final”为 false)或附加(如果前一响应的“is_final”为 true)的方式处理。

StreamingTranslateSpeechRequest

客户端为 StreamingTranslateSpeech 方法发送的顶级消息。此时会发送多条 StreamingTranslateSpeechRequest 消息。第一条消息必须包含 streaming_config 消息,且不得包含 audio_content 数据。所有后续消息都必须包含 audio_content 数据,且不得包含 streaming_config 消息。

字段
联合字段 streaming_request。流式传输请求,可以是流式传输配置或内容。streaming_request 只能是下列其中一项:
streaming_config

StreamingTranslateSpeechConfig

向识别器提供指定如何处理请求的信息。 第一条 StreamingTranslateSpeechRequest 消息必须包含 streaming_config 消息。

audio_content

bytes

要翻译的音频数据。连续的音频数据块在连续的 StreamingTranslateSpeechRequest 消息中发送。第一个 StreamingTranslateSpeechRequest 消息不得包含 audio_content 数据,所有后续 StreamingTranslateSpeechRequest 消息必须包含 audio_content 数据。必须按照 StreamingTranslateSpeechConfig 所指定的方式对音频字节进行编码。注意:与所有字节字段一样,协议缓冲区使用纯二进制表示法(而不是 base64)。

StreamingTranslateSpeechResponse

流式语音翻译响应,与当前正在处理的一部分音频相对应。

字段
error

Status

仅供输出。如果设置了此字段,则返回 google.rpc.Status 消息,指定操作发生的错误。

result

StreamingTranslateSpeechResult

仅供输出。当前正在处理的翻译结果(is_final 可以是 true,也可以是 false)。

speech_event_type

SpeechEventType

仅供输出。表示语音事件的类型。

SpeechEventType

表示语音事件的类型。

枚举
SPEECH_EVENT_TYPE_UNSPECIFIED 未指定语音事件。
END_OF_SINGLE_UTTERANCE 该事件表明服务器已经检测到用户所说话语结束,并且预计不会有额外的语音。因此,服务器不会处理额外的音频(尽管后续可能会返回额外的结果)。当客户端收到“END_OF_SINGLE_UTTERANCE”事件时,客户端应停止发送请求。但客户端应继续接收剩余响应,直到流终止为止。要以流式方式构造完整的句子,则应采用替换(如果前一响应的“is_final”为 false)或附加(如果前一响应的“is_final”为 true)的方式处理。仅当 single_utterance 设置为 true 时才发送此事件,否则不使用此事件。

StreamingTranslateSpeechResult

对应于当前正在处理的音频的一部分的流式语音翻译结果。

字段
text_translation_result

TextTranslationResult

文本翻译结果。

TextTranslationResult

文本翻译结果。

字段
translation

string

仅供输出。翻译后的句子。

is_final

bool

仅供输出。如果为 false,则此 StreamingTranslateSpeechResult 代表临时结果,后续可能会更改。如果为 true,则表示翻译服务返回此特定 StreamingTranslateSpeechResult 的最后时间,流式翻译器不会针对该部分转录内容和相应音频返回任何进一步的假设。

TranslateSpeechConfig

向语音翻译提供指定如何处理请求的信息。

字段
audio_encoding

string

必需。对音频数据进行编码。支持的格式:

  • linear16

未压缩的 16 位有符号小端字节序采样(线性 PCM)。

  • flac

推荐的编码方式是 flac(免费无损音频编解码器),因为这种编码方式是无损的(因此丝毫不会影响到识别),并且所需带宽仅为 linear16 的大致一半。

  • mulaw

8 位采样,使用 G.711 PCMU/mu-law 压缩 14 位音频采样。

  • amr

自适应多速率窄带编解码器。sample_rate_hertz 必须是 8000。

  • amr-wb

自适应多速率宽带编解码器。sample_rate_hertz 必须是 16000。

  • ogg-opus

Ogg 容器中的 Opus 编码音频帧。sample_rate_hertz 必须是以下值之一:8000、12000、16000、24000 或 48000。

source_language_code

string

必需。输入音频的源语言代码 (BCP-47)。

target_language_code

string

必需。输出的目标语言代码 (BCP-47)。

sample_rate_hertz

int32

可选。此音频数据的采样率(以赫兹为单位)。有效值的范围为:8000-48000。最理想的选择是 16000。为获得最佳效果,请将音频源的采样率设置为 16000 Hz。如果无法实现,则请使用音频源的原生采样率(而不是重新采样)。

model

string

可选。允许使用的值包括:google-provided-model/defaultgoogle-provided-model/videogoogle-provided-model/phone-callgoogle-provided-model/enhanced-phone-call

如果未设置,则使用 google-provided-model/default。