news 2026/8/24 11:28:41

Duix Mobile 离线数字人三步跑通

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Duix Mobile 离线数字人三步跑通

Duix Mobile 离线数字人三步跑通

【免费下载链接】Duix-Mobile🚀 全网效果最好的移动端【实时对话数字人】。 支持本地部署、多模态交互(语音、文本、表情),响应速度低于 1.5 秒,适用于直播、教学、客服、金融、政务等对隐私与实时性要求极高的场景。开箱即用,开发者友好。项目地址: https://gitcode.com/openguiji/duix-mobile

Duix Mobile 是一套在手机上直接跑实时交互数字人的开源 SDK:推一段音频,数字人开口型,全程本地渲染、不依赖服务器。读完这篇,你能构建 Android 演示工程、用自有音频驱动数字人播报,并避开三个最常见的坑。

三分钟上手

  1. 克隆仓库:源码包含 Android、iOS 双端 SDK 和演示应用。git clone https://gitcode.com/openguiji/duix-mobile
  2. 配置构建:用 Android Studio 打开duix-android/dh_aigc_android,把 Gradle JDK 设为 17(工程使用 Gradle 8.0);iOS 开发者用 Xcode 12+ 打开duix-ios/GJLocalDigitalDemo工程即可。
  3. 构建启动:编译 test 演示模块并安装到真机,建议 Android 10+、8 核 CPU、8GB 以上内存、1GB 以上可用存储。gradle assembleDebug

核心能力速览

音频驱动口型。数字人是"音频进、动作出":把 16kHz、16bit、单通道的 PCM 通过startPush()/pushPcm()/stopPush()推给 DUIX 对象,引擎实时提取音频特征驱动嘴部。想整段播报时也可以用playAudio()直接播本地 WAV,内部同样转成 PCM 流驱动。

本地渲染。渲染走 OpenGL ES,SDK 自带DUIXRenderer+DUIXTextureView,支持透明通道,数字人可以叠在任意背景图或视频上。若要嵌入自己的渲染管线,实现RenderSink接口接收 BGR 帧数据即可。

动作区间可控。模型包里带SpecialAction.json动作标注(打招呼、挥手等)。运行时startMotion("打招呼", true)按名播放,或startRandomMotion(true)随机挑一个,用来填补对话间隙。

模型资源自管理。VirtualModelUtil统一处理基础配置和模型包的下载、解压、校验:先checkModel检查,没下过就触发下载解压。模型落盘后,整条链路完全离线,可反复驱动。

双端一致。Android 与 iOS 提供同一套"初始化 → 渲染 → 音频驱动 → 动作"接口。仓库自带可交互的演示应用,改一下MainActivity.kt里的模型地址就能体验完整流程。

关键参数与调优

真正决定口型"动得起来"的参数只有两个:

  • 音频格式:必须是 16kHz 采样率、16bit 位深、单通道,不合规格的 WAV/PCM 不会驱动口型。
  • 段长下限:每段startPushstopPush至少 1 秒(32000 字节),否则不触发口型驱动;短句先用空白帧补齐再推。
duix?.startPush() duix?.pushPcm(pcm) // 16k / 16bit / 单通道,单段不少于 1 秒 duix?.stopPush()

容易踩的坑

⚠️init 回调失败。模型文件或基础配置没有完整下载到指定目录。先用checkBaseConfig/checkModel校验本地状态,下载解压完成后再调init()

⚠️渲染黑屏。纹理视图被当成不透明背景配置,或在设置 renderer 之前就改了渲染模式。照示例配置setEGLConfigChooser(8, 8, 8, 8, 16, 0)并设isOpaque = falsesetRenderer之后再设RENDERMODE_WHEN_DIRTY

⚠️内存持续增长直到 OOM。推送的 PCM 缓存在内存里,不随播放进度释放。长音频分段推送,每段推完立刻调stopPush()结束会话,别把分钟级音频塞进一段。

延伸阅读

  • Android SDK 中文文档:DUIX 接口、渲染控制与动作区间的完整说明。
  • iOS SDK 文档:手动集成步骤与麦克风权限配置。

【免费下载链接】Duix-Mobile🚀 全网效果最好的移动端【实时对话数字人】。 支持本地部署、多模态交互(语音、文本、表情),响应速度低于 1.5 秒,适用于直播、教学、客服、金融、政务等对隐私与实时性要求极高的场景。开箱即用,开发者友好。项目地址: https://gitcode.com/openguiji/duix-mobile

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/24 11:27:49

平衡隐私与精度:asdfree复权重与数据保密完全教程

平衡隐私与精度:asdfree复权重与数据保密完全教程 【免费下载链接】asdfree analyze survey data for free 项目地址: https://gitcode.com/gh_mirrors/as/asdfree asdfree(Analyze Survey Data for Free)是一个免费开源的 R 语言调查…

作者头像 李华
网站建设 2026/8/24 11:27:21

C++函数模板:从类型安全泛型到编译期代码生成

1. 从“重复造轮子”到“一劳永逸”:为什么我们需要函数模板 如果你写过一段时间的C,尤其是写过一些需要处理不同数据类型的通用算法,比如交换两个变量的值、找一个数组里的最大值、或者实现一个简单的排序,你大概率会陷入一种“甜…

作者头像 李华
网站建设 2026/8/24 11:26:38

AI智能体技能开发实战:从零构建可执行复杂任务的大模型应用

你是不是也遇到过这样的场景:想用大模型做个智能客服,却发现它连基本的订单查询都搞不定;想开发一个能自动写周报的助手,结果它生成的周报格式混乱、内容空洞。你可能会想:“大模型不是号称‘全能’吗?怎么…

作者头像 李华
网站建设 2026/8/24 11:26:32

从Stable Diffusion到LoRA:手把手教你本地部署AI风格化图像生成模型

最近在AI图像生成圈子里,一个名为“GPT-5.6 Sol”的项目突然火了起来。它并非来自OpenAI或Anthropic的官方发布,却因为一个极其精准的“恶搞”能力而备受关注:它能生成以假乱真的“Claude风格”图像。如果你在社交媒体上看到一张图&#xff0…

作者头像 李华
网站建设 2026/8/24 11:23:50

数学建模竞赛首日高效作战指南:从选题到模型实现的24小时全流程

1. 开赛首日:从混沌到清晰的24小时如果你参加过数学建模竞赛,或者正准备参加,那你一定对“第一天”这三个字有着复杂的感情。它既不是赛前那种按部就班的准备,也不是最后一天那种争分夺秒的冲刺。第一天,更像是一场没有…

作者头像 李华
网站建设 2026/8/24 11:23:04

STM32+FreeRTOS事件组实战:多条件同步与状态协同

1. 项目概述:为什么在STM32上用FreeRTOS事件组,而不是裸机轮询或信号量? FreeRTOS事件组(Event Groups)是嵌入式实时系统里一个被严重低估、却极其关键的同步机制。它不是可有可无的“高级功能”,而是解决多…

作者头像 李华