🔐 技术架构

火山引擎统一技术架构

2 个供应商,0 个自建服务。ASR+LLM+TTS+口型驱动一条 WebRTC 搞定。3D 头像 iOS 本地渲染,零延迟零月费。

一、架构全景

iOS App (SwiftUI)
  │
  ├─ WebRTC (ByteRTC SDK)
  │    └─→ 火山 RTC StartVoiceChat
  │          · ASR + LLM + TTS (名师克隆声音) + 字幕时间戳
  │          · ¥0.10/min
  │
  ├─ HTTP
  │    └─→ 腾讯云 SOE (发音评测)
  │
  ├─ 3D 名师头像 (SceneKit 本地渲染, ¥0/月)
  │    └─ 字幕时间戳 → ARKit Blend Shapes 口型同步
  │
  └─ 后端 (Supabase + 阿里云 OSS)
供应商精简: 5 → 2

之前 (v1): 豆包 Realtime + 通义 Omni + 腾讯 SOE + CosyVoice + GMTalker
现在 (v2): 火山 RTC StartVoiceChat + 腾讯云 SOE

二、核心引擎:火山 RTC StartVoiceChat

一个 API 搞定全部语音能力

不需要 ASR、LLM、TTS 分开调。火山 RTC 的 StartVoiceChat 是专为 "AI 实时对话 + 数字人" 设计的 WebRTC 端点。

能力状态说明
端到端语音已上线ASR → LLM → TTS 全链路
名师克隆声音已上线上传 20s MP3 → voice_id
字幕时间戳SubtitleMode=2逐字级对齐,直接驱动口型
VAD 打断已上线判停延迟 ~250ms
语义断句已上线不等 TTS 播完就准备下一轮
情感控制已上线语速、情感标签
图片理解已上线KET/PET 图片描述题型
Function Calling已上线查题库、打分、生成报告

三、3D 数字人:iOS 本地渲染 vs 云渲染

方案决策:iOS 本地 SceneKit 渲染

火山 RTC 返回字幕时间戳(每个词的起止时间),iOS 端用 SceneKit + ARKit Blend Shapes 驱动 3D 头像口型。

云渲染 (奇美拉/GMTalker)iOS 本地渲染 ✅
模型质量UE5 / 专业渲染 极高移动端 GPU 中高
延迟+200ms 网络+0ms(本地)
月成本¥3,000+¥0
3D 模型平台内置AI 生成 ¥0(腾讯混元3D / 阿里 LAM)
运维
可用性奇美拉内测现在可用

四、渲染原理

火山云端:
  ASR → LLM → TTS (名师声音)
                │
                ├─ 音频流 ──→ WebRTC ──→ iOS 播放
                └─ 字幕时间戳 ──→ WebRTC ──→ iOS 驱动口型

iOS 本地:
  收到字幕时间戳:
    "Let's"  [0ms-200ms]   → Blend Shape: L→E→T→S 音素序列
    "begin"  [250ms-500ms]  → Blend Shape: B→I→G→I→N
    ...

  音素 → Blend Shape 映射:
    "啊" → mouthOpen       "呜" → mouthPucker
    "嗯" → mouthClosed     "F"  → mouthFunnel
    ...

  60fps 插值动画,实时同步

五、AI 生成 3D 头像(替代外包建模)

单张照片 → 可驱动的 3D 名师头像

2025-2026 年,单图生成 3D 人头像已成熟。无需外包建模师。

方案价格输入输出国内
腾讯混元3D免费1-5 张照片GLB/FBX + PBR 贴图✅ 极快
阿里 LAM开源单张照片3DGS + FACS Blend Shapes✅ HuggingFace Demo
Meshy API$16/月单图/多图GLB/USDZ + 骨骼绑定⚠️ 需代理

MVP 工作流

1. 拍摄名师正面 + 侧面照片 3-5 张(录音棚同步完成)
2. 腾讯混元3D 生成 3D 头像 → 导出 GLB
3. 如需表情 Blend Shapes:用阿里 LAM 补充 FACS 绑定
4. SceneKit 加载 → 火山字幕时间戳驱动口型
成本 ¥0 · 时间 1-2 天 · 可反复生成调优

六、待验证的关键问题

验证项风险验证方式耗时
StartVoiceChat 是否支持自定义音色?🔴 阻塞查阅最新 API 文档 + 实测 voice_id 参数1 天
SubtitleMode=2 的时间戳精度?🟡录制口型 vs 音频波形对比1 天
中英混合 System Prompt 效果?🟡雅思场景 10 组测试2 天
AI 生成 3D 头像质量?🟡腾讯混元3D + LAM 对比实测1 天
ByteRTC iOS SDK 稳定性?🟡集成测试 + 1h 压力测试1 天