tencent cloud

直播 SDK

AITranscriberStore

Download
聚焦模式
字号
最后更新时间: 2026-07-16 14:56:38

简介

AITranscriberStore 提供了一套完整的 AI 实时转写管理 API,包括启动、更新和停止实时转写。 通过该类,可以在音视频通话或直播过程中实现实时语音转文字功能,并支持多语言翻译。
重要:
使用 create 工厂方法为特定房间创建 AITranscriberStore 实例。在开始转写前,配置源语言和翻译语言。
说明:
转写状态更新通过 transcriberState 发布者传递。订阅它以接收实时转写消息。

功能特性

实时转写:支持在音视频会话中实时将语音转换为文字。
多语言识别:支持20种源语言识别,包括中文、英文、日语、韩语等。
实时翻译:支持将转写文本实时翻译为15种目标语言。
状态管理:提供实时消息列表状态,便于 UI 展示。

可订阅数据

TranscriberState 的字段描述如下:
属性名
类型
描述
selfLanguage
ValueListenable<SourceLanguage>
当前用户的自身语言。
realtimeMessageList
ValueListenable<List<TranscriberMessage>>
实时转写消息列表,随着转写进行自动更新。
isTranscriptionRunning
ValueListenable<bool>
转写是否正在运行。
transcriptionConfig
ValueListenable<TranscriptionConfig>
当前转写配置。
isInterpretationRunning
ValueListenable<bool>
同声传译是否正在运行。
interpretationConfig
ValueListenable<InterpretationConfig>
当前同声传译配置。
interpretationVolume
ValueListenable<int>
当前同声传译音量。

API 列表

函数名
描述
为特定房间创建实例。
启动转写。
更新转写配置。
停止转写。
启动同声传译。
更新同声传译配置。
停止同声传译。
设置同声传译音量。

获取实例

create

为特定房间创建实例。

转写控制

startTranscription

启动转写。
Future<CompletionHandler> startTranscription(SourceLanguage myLanguage, {TranscriptionConfig? config});
使用指定语言和配置启动 AI 转写服务。 启动后,转写器将识别房间内的语音,并通过状态发布者提供实时转写结果。
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
描述
myLanguage
当前用户的语音识别源语言。
config
转写配置,包括是否启用翻译。

updateTranscription

更新转写配置。
Future<CompletionHandler> updateTranscription(SourceLanguage myLanguage, {TranscriptionConfig? config});
更新正在进行的转写服务的配置。 可以用于更改源语言或修改翻译设置,而无需停止和重新启动转写。
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
描述
myLanguage
新的语音识别源语言。
config
新的转写配置。

stopTranscription

停止转写。
Future<CompletionHandler> stopTranscription();
停止正在进行的 AI 转写服务。停止后,转写器将不再识别语音或提供转写结果。
版本信息
从3.5版本开始支持。

同声传译控制

startInterpretation

启动同声传译。
Future<CompletionHandler> startInterpretation(SourceLanguage myLanguage, {InterpretationConfig? config});
使用指定语言和配置启动 AI 同声传译服务。 启动后,同声传译器将在房间内提供实时语音翻译。
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
描述
myLanguage
同声传译的源语言。
config
同声传译配置,包括语音类型。

updateInterpretation

更新同声传译配置。
Future<CompletionHandler> updateInterpretation(SourceLanguage myLanguage, {InterpretationConfig? config});
更新正在进行的同声传译服务的配置。
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
描述
myLanguage
新的同声传译源语言。
config
新的同声传译配置。

stopInterpretation

停止同声传译。
Future<CompletionHandler> stopInterpretation();
停止正在进行的 AI 同声传译服务。
版本信息
从3.5版本开始支持。

setInterpretationVolume

设置同声传译音量。
Future<CompletionHandler> setInterpretationVolume(int volume);
设置同声传译音频输出的音量。
版本信息
从3.5版本开始支持。
参数说明
参数名
类型
描述
volume
int
音量等级。

数据结构

AITranscriberStoreListener

AI 转写事件回调。
警告:
已废弃:请使用 transcriberState 观察状态变化代替
方法
方法名
说明
onReceiveTranscriberMessage
收到新的转写消息时触发。
onRealtimeTranscriberStarted
实时转写服务成功启动时触发。
onRealtimeTranscriberStopped
实时转写服务停止时触发。
onRealtimeTranscriberError
实时转写过程中发生错误时触发。

SourceLanguage

转写识别的源语言类型。
枚举值
说明
chineseEnglish
zh_en
中英文混合识别。
chinese
zh
中文。
english
en
英文。
cantonese
zh-yue
粤语。
vietnamese
vi
越南语。
japanese
ja
日语。
korean
ko
韩语。
indonesian
id
印尼语。
thai
th
泰语。
portuguese
pt
葡萄牙语。
turkish
tr
土耳其语。
arabic
ar
阿拉伯语。
spanish
es
西班牙语。
hindi
hi
印地语。
french
fr
法语。
malay
ms
马来语。
filipino
fil
菲律宾语。
german
de
德语。
italian
it
意大利语。
russian
ru
俄语。

TranslationLanguage

翻译目标语言类型。
枚举值
说明
chinese
zh
中文。
english
en
英文。
vietnamese
vi
越南语。
japanese
ja
日语。
korean
ko
韩语。
indonesian
id
印尼语。
thai
th
泰语。
portuguese
pt
葡萄牙语。
arabic
ar
阿拉伯语。
spanish
es
西班牙语。
french
fr
法语。
malay
ms
马来语。
german
de
德语。
italian
it
意大利语。
russian
ru
俄语。

InterpretationVoice

同声传译的语音类型。
枚举值
说明
female
female
女声。
male
male
男声。

TranscriberMessage

转写消息,表示一段转写的语音片段。
属性
类型
说明
segmentId
String
转写片段唯一标识。
speakerUserId
String
说话人用户 ID。
speakerUserName
String
说话人显示名称。
sourceText
String
语音识别的原始转写文本。
translationTexts
Map<TranslationLanguage, String>
翻译结果,以目标语言为键。包含每种已配置翻译语言的翻译文本。
timestamp
int
消息时间戳。
isCompleted
bool
片段转写是否已完成。当为 true 时,原文文本和翻译文本将不再更新。

TranscriptionConfig

转写功能配置。
属性
类型
说明
enableTranslation
bool
是否在转写过程中启用翻译。

InterpretationConfig

同声传译功能配置。
属性
类型
说明
voice
同声传译输出的语音类型。

TranscriberConfig

转写配置,用于配置源语言和翻译语言。
警告:
已废弃:请使用 TranscriptionConfig 或 InterpretationConfig 代替
属性
类型
说明
sourceLanguage
语音识别的源语言,默认为中英文混合。
translationLanguages
翻译目标语言列表。可以同时配置多种语言。

TranscriberState

AITranscriberStore 对外提供的转写相关状态数据。
属性
类型
说明
selfLanguage
ValueListenable<SourceLanguage>
当前用户的自身语言。
realtimeMessageList
ValueListenable<List<TranscriberMessage>>
实时转写消息列表,随着转写进行自动更新。
isTranscriptionRunning
ValueListenable<bool>
转写是否正在运行。
transcriptionConfig
ValueListenable<TranscriptionConfig>
当前转写配置。
isInterpretationRunning
ValueListenable<bool>
同声传译是否正在运行。
interpretationConfig
ValueListenable<InterpretationConfig>
当前同声传译配置。
interpretationVolume
ValueListenable<int>
当前同声传译音量。

使用示例

// 为特定房间创建实例
final store = AITranscriberStore.create("your_room_id");
// 订阅状态变化
store.transcriberState.realtimeMessageList.addListener(() {
final messages = store.transcriberState.realtimeMessageList.value;
for (final message in messages) {
print("说话人: ${message.speakerUserName}");
print("原文: ${message.sourceText}");
}
});
// 配置转写
final config = TranscriberConfig(
sourceLanguage: SourceLanguage.chineseEnglish,
translationLanguages: [TranslationLanguage.english, TranslationLanguage.japanese],
);
// 启动转写
final result = await store.startRealtimeTranscriber(config);


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈