应用场景
TRTC 支持语音转文字和翻译功能,将房间内指定用户或所有用户的音频流识别成对应的文字以及通过 AI 翻译成其他语言,实现实时字幕和实时翻译等效果。
前提条件
前往 控制台 > 功能配置 > 增值功能 开启 AI 智能识别的语音转文字、实时翻译功能。

功能说明
任务发起后,TRTC AI Service 通过识别机器人进入 TRTC 房间拉流指定用户或所有用户的流,进行语音转文字识别,将识别结果实时回调给客户端和服务端。

接入说明
第一步:接收语音识别结果
方式一:通过客户端 SDK 接收文字消息
客户端回调消息格式如下,以 Web 端为例:
trtc.on(TRTC.EVENT.CUSTOM_MESSAGE, event => { // receive custom message// event.userId: 语音识别机器人的userId// event.cmdId: 消息Id, 转录和字幕固定为1// event.seq: 消息的序号// event.data: ArrayBuffer 类型, 转录或字幕的内容,见下方data字段说明const data = new TextDecoder().decode(event.data)// data 字段说明如下console.log(`received custom msg from ${event.userId}, message: ${ data }`)})
data 字段说明(实时的字幕消息)
字段名 | 类型 | 含义 |
type | Integer | 10000: 实时字幕与完整的一句话下发消息类型。 |
sender | String | 说话人的 userId。 |
receiver | Array | 接收者 userId 列表,该消息实际是在房间内广播。 |
payload.text | String | 识别出的文本。 Unicode 编码。 |
payload.start_time | String | 消息产生的时间 任务启动后的绝对时间。 |
payload.end_time | String | 消息结束的时间 任务启动后的绝对时间 。 |
payload.end | Boolean | 如果为 true,代表这是一句完整的话。 |
{"type": 10000,"sender": "user_a","payload": {"text":"","start_time":"00:00:02","end_time":"00:00:05","end": true}}
实时的翻译消息
{"type": 10000,"sender": "user_951073","payload": {"start_time_ms": 1760,"end_time_ms": 5530,"end": false,"roundid": "e6330a3c-eed7-40bb-8229-9bbe733a313f", // 一轮对话的 ID"translation_text": "simultaneous interpretation of the meeting", // 翻译文本"translation_language": "en", // 翻译的语言代码"taskid": "x-dPLCz" // 转录任务唯一标识}}
说明:
回调示例说明:
转录:会将完整的一句话转录并推送
“今天天气怎么样?”
字幕 & 翻译:将字幕句子或者翻译句子分段推送,后一段会包含前一段,确保实时性。
“今天”
“今天天气”
“今天天气怎么样”
顺序说明:字幕消息 > 字幕消息 > .... > 字幕消息(end = true)
方式二:通过服务端回调接收
第二步:发起语音转文字、实时翻译任务
TRTC 提供以下云 API 用于发起和管理语音转文字和实时翻译,具体如下:
开始语音转文字任务:StartAITranscription
查询语音转文字任务:DescribeAITranscription
停止语音转文字任务:StopAITranscription
开始实时翻译任务:在 StartAITranscription 的输入参数中配置 TranslationConfig参数,目前支持配置以下语种翻译:
语言代码 | 对应语种 |
"zh" | 中文 |
"en" | 英语 |
"es" | 西班牙语 |
"pt" | 葡萄牙语 |
"fr" | 法语 |
"de" | 德语 |
"ru" | 俄语 |
"ar" | 阿拉伯语 |
"ja" | 日语 |
"ko" | 韩语 |
"vi" | 越南语 |
"ms" | 马来语 |
"id" | 印度尼西亚语 |
"it" | 意大利语 |
"th" | 泰语 |
注意:
语音转文字和实时翻译功能单个 SDKAppId 任务并发数限制100路,如需提升提交工单处理。
实时翻译功能目前支持15种语言:中文、英语、西班牙语、葡萄牙语、法语、德语、俄语、阿拉伯语、日语、韩语、越南语、马来语、印度尼西亚语、意大利语、泰语,如需其他语种可以 联系我们。
由于受不同语境或语种差异的影响,AI 翻译的译文内容适用于辅助参考,不应作为唯一专业意见或结论。