TUICallKit 提供了用户实时语音转文字,并翻译成其它语言的能力,在使用的过程中,用户可以更新 AI 实时字幕的设置,有多种翻译可选。本文将指导您如何快速集成 AI 实时字幕。
说明:
下文将针对 TUICallKit 2026年02月04日推出的新版 AI 实时字幕进行使用说明(自2026年02月04日起,接入的 TUICallKit 内置新版 AI 实时字幕)。若您当前的 TUICallKit 已接入旧版 AI 实时字幕,详情请见 AI 实时字幕(旧)。旧版需通过服务端调用 RestAPI 开启 AI 转录功能,新版无需调用 RestAPI,已在 TUICallKit 内部完成。
效果演示
AI 实时字幕 | AI 实时字幕设置 | AI 翻译语言选择 |
![]() | ![]() | ![]() |
应用场景
AI 实时字幕专为多样化的通话需求设计,您可以实现如下应用场景:
场景类型 | 说明 |
远程医疗 | 实时显示医生和患者的语音字幕,方便理解对方意思,通话结束后为医生提供会诊记录。 |
在线客服 | 对于多语言环境下的客户,客户可以用母语提问,客服及时看到翻译字幕,消除沟通壁垒。 |
在线教育 | 学生可以全身心投入互动,无需分心做笔记,会后直接导出带翻译的完整课堂笔记。 |
更多场景 | 任何需要实时语音转文字和翻译的场景均可通过 AI 翻译来实现,更多玩法等待您的探索。 |
集成功能
本部分将介绍如何将 AI 实时字幕接入到您的项目中,令您的项目具备实时语音转文字,并翻译成其它语言的能力。
步骤 1:开通服务
步骤 2:代码集成
步骤 3:体验 AI 实时字幕
通话开始后,AI 实时字幕功能将自动启用:
字幕显示:实时字幕自动呈现在通话界面。
显示控制:点击左上角开关可开启或关闭字幕。
翻译设置:点击字幕区域任意位置,进入 AI 翻译设置页面。
关闭功能
如果您不需要该功能,可通过如下代码,在开始通话前关闭 AI 实时字幕。
TUICallKit.createInstance(context).enableAITranscriber(false)
TUICallKit.createInstance().enableAITranscriber(enable: false)
调整字幕大小
考虑到年长用户视力不便,可以通过如下代码调大 AI 字幕,让他们看得更清楚。
// 修改 ai_view_subtitle_item.xml 下 textSize 的大小<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/ai_ll_transcriber_item"android:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="vertical"><TextViewandroid:id="@+id/ai_tv_user_name"android:layout_width="match_parent"android:layout_height="wrap_content"android:textColor="@color/white_3"android:textSize="@dimen/text_size_20"/><TextViewandroid:id="@+id/ai_tv_source_text"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginTop="@dimen/spacing_4"android:textColor="@color/white_1"android:textSize="@dimen/text_size_20"/><TextViewandroid:id="@+id/ai_tv_translation_text"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginTop="@dimen/spacing_4"android:textColor="@color/white_1"android:textSize="@dimen/text_size_20"/></LinearLayout>
// 修改 TranscriberView.swift 下 systemFont 的大小private final class TranscriberMessageCell: UITableViewCell {private let userNameLabel: UILabel = {let label = UILabel()label.textColor = UIColor(0xFFFFFF, alpha: 0.75)label.font = .systemFont(ofSize: 20)return label}()private let sourceTextLabel: UILabel = {let label = UILabel()label.textColor = .whitelabel.font = .systemFont(ofSize: 20)label.numberOfLines = 0return label}()private let translationTextLabel: UILabel = {let label = UILabel()label.textColor = UIColor(0xFFFFFF, alpha: 0.9)label.font = .systemFont(ofSize: 20)label.numberOfLines = 0return label}()// ... 其它代码 ...}
效果如下:



