首页
/ Duix Mobile 实时对话数字人 SDK 技术文档

Duix Mobile 实时对话数字人 SDK 技术文档

2026-02-04 04:50:00作者:昌雅子Ethen

1. 安装指南

1.1 系统要求

  • Android: Android 5.0 (API level 21) 及以上版本
  • iOS: iOS 11.0 及以上版本
  • 硬件建议: 推荐使用配备骁龙® 8 Gen 2 SoC 或同等性能的处理器设备

1.2 下载SDK

开发者可从以下渠道获取SDK:

  • GitHub官方仓库下载最新发布版本
  • 项目提供的8个公有数字人模型资源包(见README中表格)

2. 项目使用说明

2.1 快速集成

Android平台:

  1. duix-android模块导入Android Studio项目
  2. build.gradle中添加依赖:
implementation project(':dh_aigc_android')

iOS平台:

  1. duix-ios文件夹拖入Xcode工程
  2. 在Podfile中添加:
pod 'GJLocalDigitalDemo', :path => './duix-ios/GJLocalDigitalDemo'

2.2 基础配置

// Android示例
DuixConfig config = new DuixConfig.Builder()
    .setAvatarPath("assets/avatar/")  // 数字人资源路径
    .setAsrProvider(CustomASR.class)  // 自定义ASR服务
    .setTtsProvider(CustomTTS.class)  // 自定义TTS服务
    .build();
DuixEngine.init(this, config);

3. 项目API使用文档

3.1 核心API接口

初始化引擎

// iOS示例
[DXEngine setupWithConfig:^(DXConfig *config) {
    config.avatarType = DXAvatarTypePrebuilt;
    config.llmHandler = ^(NSString *input, DXLLMCompletion completion) {
        // 接入自定义LLM逻辑
    };
}];

启动对话会话

// Android示例
DuixSession session = DuixEngine.createSession()
    .setOnSpeechStart(() -> { /* 语音开始回调 */ })
    .setOnSpeechEnd(() -> { /* 语音结束回调 */ })
    .start();

中断当前对话

// iOS示例
[[DXEngine sharedInstance] interruptCurrentSession];

3.2 回调事件

事件类型 说明
onSpeechStart 数字人开始说话时触发
onSpeechEnd 数字人结束说话时触发
onUserInput 收到用户语音输入时触发

4. 项目安装方式

4.1 标准安装流程

  1. 获取SDK包:从官方仓库下载对应平台的SDK
  2. 集成依赖
    • Android: 添加aar包或模块依赖
    • iOS: 使用CocoaPods或手动导入framework
  3. 资源配置
    • 将数字人模型文件放入指定目录
    • 配置ASR/TTS服务密钥

4.2 自定义数字人集成

  1. 下载提供的数字人资源包(ZIP格式)
  2. 解压后包含:
    • model/ - 核心动画模型
    • textures/ - 贴图资源
    • config.json - 行为配置文件
  3. 通过API指定自定义数字人路径:
DuixConfig.setCustomAvatarPath("/sdcard/custom_avatar/");

4.3 开发环境验证

运行示例项目验证基础功能:

  • 语音输入/输出测试
  • 表情动画渲染检查
  • 流式中断响应测试(延迟应<120ms)

5. 高级功能配置

5.1 多语言支持

通过修改strings.xml(Android)或Localizable.strings(iOS)实现界面多语言化

5.2 弱网优化

// iOS网络配置示例
[DXNetworkConfig shared].maxRetryCount = 3;
[DXNetworkConfig shared].timeoutInterval = 10.0;

6. 注意事项

  1. 确保设备麦克风和摄像头权限已授权
  2. 首次加载数字人模型可能需要较长时间(约10-30秒)
  3. 建议在子线程处理LLM请求以避免界面卡顿
  4. 流式音频功能需要SDK版本≥1.2.0
登录后查看全文
热门项目推荐
相关项目推荐