Repository files navigation

中文版 | English

lipku%2FLiveTalking | Trendshift

实时交互流式数字人引擎,实现音视频同步对话,已在业内获得广泛商用

效果演示: wav2lip | ernerf | musetalk

国内镜像: Gitee | GitCode


Features

  1. 支持多种数字人模型: ernerf、musetalk、wav2lip、Ultralight-Digital-Human
  2. 支持声音克隆
  3. 支持数字人说话被打断
  4. 支持全身视频拼接
  5. 支持 WebRTC、RTMP、虚拟摄像头输出
  6. 支持动作编排:不说话时播放自定义视频
  7. 支持多并发
  8. 支持自定义数字人形象
  9. 提供前端API接口对接

使用场景

LiveTalking 基于实时流式数字人技术,通过文本或语音驱动虚拟形象说话,结合 LLM 实现智能对话。适用于以下场景:

场景说明
虚拟主播/直播带货LiveStream24 小时无人直播,通过 LLM 自动生成带货话术,配合动作编排实现自然表现
AI 数字人客服接入企业知识库,用户语音提问,数字人实时回答,支持打断重说
在线教育/培训教师数字分身录制课程,或通过 API 驱动数字人讲师实时授课
智能语音助手结合智能音箱或 APP,调用 /human 接口驱动数字人进行语音对话交互
大屏讲解数字人讲解员在展厅大屏、活动现场等场景进行内容讲解和互动
短视频批量制作通过 API 批量提交文案生成数字人出镜视频,无需真人拍摄,调用 /human + /record 接口

核心流程:用户输入文字/音频 → LLM 生成回复(可选)→ TTS 合成语音 → 数字人实时口型同步 → 音视频推流输出


1. 安装

已在 Ubuntu 22.04、Python 3.12、PyTorch 2.9.1、CUDA 12.8 测试通过。

1.1 安装依赖

git clone https://github.com/lipku/LiveTalking.git conda create -n livetalking python=3.12
conda activate livetalking
# 如果 CUDA 版本不为 12.8 (运行 nvidia-smi 确认),请根据 PyTorch 官网(https://pytorch.org/get-started/previous-versions)安装对应版本
pip install torch==2.9.1 torchvision==0.24.1 torchaudio==2.9.1 --index-url https://download.pytorch.org/whl/cu128
cd LiveTalking
pip install -r requirements.txt

安装常见问题:FAQ

Linux CUDA 环境搭建参考: https://zhuanlan.zhihu.com/p/674972886


2. 快速开始

2.1 下载模型

网盘地址
夸克云盘https://pan.quark.cn/s/83a750323ef0
Google Drivehttps://drive.google.com/drive/folders/1FOC_MD6wdogyyX_7V1d4NDIO7P9NlSAJ?usp=sharing
  1. wav2lip256.pth 拷贝到项目的 models/ 目录下,重命名为 wav2lip.pth
  2. wav2lip256_avatar1.tar.gz 解压后整个文件夹拷贝到 data/avatars/ 目录下

2.2 启动服务

python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1

注意: 服务端需开放端口 TCP:8010, UDP:1-65536

2.3 客户端接入

方式说明
浏览器打开 http://serverip:8010/index.html,点击"开始连接"播放数字人视频,在文本框输入文字提交即可
API 调用参考 API 文档 通过 HTTP 接口驱动
桌面客户端下载地址: https://pan.quark.cn/s/d7192d8ac19b

2.4 Web 页面

页面地址说明
首页/index.htmlWebRTC 连接 + 文本/音频驱动 + 录制控制
Avatar 生成/avatar.html上传视频自动生成数字人形象
管理后台/admin.html实时监控会话状态与全局配置

2.5 快速体验

  1. 使用在线镜像创建实例即可运行: UCloud 镜像

  2. Windows整合包 https://pan.quark.cn/s/a040bf5cb065

  3. 商用版体验地址 https://www.livetalking.top

2.6 使用说明

3. 系统架构

数据流图

各层说明

API 层

  • /human: 接收文本,支持 echo(直接复读)和 chat(LLM 对话)模式
  • /humanaudio: 接收音频文件直接播放
  • 每个连接分配唯一 sessionid,支持多用户并发

逻辑层

  • LLM 引擎: 对接 Qwen 等大模型生成对话回复(也可通过OrcaRouter 等 OpenAI 兼容网关接入,--llm_provider orcarouter
  • TTS 引擎: 模块化设计,支持 EdgeTTS、GPT-SoVITS、CosyVoice、腾讯云等多种方案
  • 特征提取: 同步提取音频的声学特征(如 Mel 频谱),用于口型推理

渲染层

  • 模型推理: 使用深度学习模型 (Wav2Lip, MuseTalk 等) 根据音频特征生成口型画面
  • 后处理: 将生成的口型区域平滑贴回原始高清视频

推流层

  • WebRTC: 低延迟浏览器端推流
  • RTMP: 标准直播协议,支持推流到 B站/YouTube 等平台
  • 虚拟摄像头: 输出为系统摄像头设备

插件系统

  • 基于 registry.py 的去中心化注册机制,开发者可自行扩展 TTS、Avatar、Output 模块

4. API 接口

文档说明
docs/api.md通用业务 API — WebRTC、文本/音频驱动、录制、动作编排
docs/avatar_api.mdAvatar 生成 API — 创建任务、查询进度、删除任务
docs/admin_api.mdAdmin 管理 API — 全局配置、会话监控、强制停止

5. Docker 运行

镜像说明:


6. 性能指标

  • 每路视频压缩消耗 CPU,分辨率越高 CPU 消耗越大;每路口型推理消耗 GPU
  • 不说话时并发数取决于 CPU,同时说话并发数取决于 GPU
  • 后端日志 inferfps = GPU 推理帧率, finalfps = 最终推流帧率,两者均需 >=25 才算实时

实时推理性能

模型显卡FPS
wav2lip256RTX 306060
wav2lip256RTX 3080Ti120
musetalkRTX 3080Ti42
musetalkRTX 309045
musetalkRTX 409072
  • wav2lip256 推荐 RTX 3060 及以上
  • musetalk 推荐 RTX 3080Ti 及以上

7. 声明

基于本项目开发并发布在B站、视频号、抖音等平台上的视频需带上 LiveTalking 水印和标识。


引用

如果本项目对您有帮助,期待您能给一个 Star⭐和引用

@software{livetalking,
author = {Hengzhong Li},
title = {LiveTalking: Real-Time Interactive Streaming Digital Human Framework},
year = {2025},
publisher = {GitHub},
url = {https://github.com/lipku/livetalking}
}

社区链接
知识星球https://t.zsxq.com/7NMyO
微信wxwubug (加群请备注)
Telegramhttps://t.me/livetalking
Discordhttps://discord.gg/n5jSPCT3Uf
Emaillipku@foxmail.com
微信公众号数字人技术

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

中文版 | English

lipku%2FLiveTalking | Trendshift

实时交互流式数字人引擎,实现音视频同步对话,已在业内获得广泛商用

效果演示: wav2lip | ernerf | musetalk

国内镜像: Gitee | GitCode


Features

  1. 支持多种数字人模型: ernerf、musetalk、wav2lip、Ultralight-Digital-Human
  2. 支持声音克隆
  3. 支持数字人说话被打断
  4. 支持全身视频拼接
  5. 支持 WebRTC、RTMP、虚拟摄像头输出
  6. 支持动作编排:不说话时播放自定义视频
  7. 支持多并发
  8. 支持自定义数字人形象
  9. 提供前端API接口对接

使用场景

LiveTalking 基于实时流式数字人技术,通过文本或语音驱动虚拟形象说话,结合 LLM 实现智能对话。适用于以下场景:

场景说明
虚拟主播/直播带货LiveStream24 小时无人直播,通过 LLM 自动生成带货话术,配合动作编排实现自然表现
AI 数字人客服接入企业知识库,用户语音提问,数字人实时回答,支持打断重说
在线教育/培训教师数字分身录制课程,或通过 API 驱动数字人讲师实时授课
智能语音助手结合智能音箱或 APP,调用 /human 接口驱动数字人进行语音对话交互
大屏讲解数字人讲解员在展厅大屏、活动现场等场景进行内容讲解和互动
短视频批量制作通过 API 批量提交文案生成数字人出镜视频,无需真人拍摄,调用 /human + /record 接口

核心流程:用户输入文字/音频 → LLM 生成回复(可选)→ TTS 合成语音 → 数字人实时口型同步 → 音视频推流输出


1. 安装

已在 Ubuntu 22.04、Python 3.12、PyTorch 2.9.1、CUDA 12.8 测试通过。

1.1 安装依赖

git clone https://github.com/lipku/LiveTalking.git conda create -n livetalking python=3.12
conda activate livetalking
# 如果 CUDA 版本不为 12.8 (运行 nvidia-smi 确认),请根据 PyTorch 官网(https://pytorch.org/get-started/previous-versions)安装对应版本
pip install torch==2.9.1 torchvision==0.24.1 torchaudio==2.9.1 --index-url https://download.pytorch.org/whl/cu128
cd LiveTalking
pip install -r requirements.txt

安装常见问题:FAQ

Linux CUDA 环境搭建参考: https://zhuanlan.zhihu.com/p/674972886


2. 快速开始

2.1 下载模型

网盘地址
夸克云盘https://pan.quark.cn/s/83a750323ef0
Google Drivehttps://drive.google.com/drive/folders/1FOC_MD6wdogyyX_7V1d4NDIO7P9NlSAJ?usp=sharing
  1. wav2lip256.pth 拷贝到项目的 models/ 目录下,重命名为 wav2lip.pth
  2. wav2lip256_avatar1.tar.gz 解压后整个文件夹拷贝到 data/avatars/ 目录下

2.2 启动服务

python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1

注意: 服务端需开放端口 TCP:8010, UDP:1-65536

2.3 客户端接入

方式说明
浏览器打开 http://serverip:8010/index.html,点击"开始连接"播放数字人视频,在文本框输入文字提交即可
API 调用参考 API 文档 通过 HTTP 接口驱动
桌面客户端下载地址: https://pan.quark.cn/s/d7192d8ac19b

2.4 Web 页面

页面地址说明
首页/index.htmlWebRTC 连接 + 文本/音频驱动 + 录制控制
Avatar 生成/avatar.html上传视频自动生成数字人形象
管理后台/admin.html实时监控会话状态与全局配置

2.5 快速体验

  1. 使用在线镜像创建实例即可运行: UCloud 镜像

  2. Windows整合包 https://pan.quark.cn/s/a040bf5cb065

  3. 商用版体验地址 https://www.livetalking.top

2.6 使用说明

3. 系统架构

数据流图

各层说明

API 层

  • /human: 接收文本,支持 echo(直接复读)和 chat(LLM 对话)模式
  • /humanaudio: 接收音频文件直接播放
  • 每个连接分配唯一 sessionid,支持多用户并发

逻辑层

  • LLM 引擎: 对接 Qwen 等大模型生成对话回复(也可通过OrcaRouter 等 OpenAI 兼容网关接入,--llm_provider orcarouter
  • TTS 引擎: 模块化设计,支持 EdgeTTS、GPT-SoVITS、CosyVoice、腾讯云等多种方案
  • 特征提取: 同步提取音频的声学特征(如 Mel 频谱),用于口型推理

渲染层

  • 模型推理: 使用深度学习模型 (Wav2Lip, MuseTalk 等) 根据音频特征生成口型画面
  • 后处理: 将生成的口型区域平滑贴回原始高清视频

推流层

  • WebRTC: 低延迟浏览器端推流
  • RTMP: 标准直播协议,支持推流到 B站/YouTube 等平台
  • 虚拟摄像头: 输出为系统摄像头设备

插件系统

  • 基于 registry.py 的去中心化注册机制,开发者可自行扩展 TTS、Avatar、Output 模块

4. API 接口

文档说明
docs/api.md通用业务 API — WebRTC、文本/音频驱动、录制、动作编排
docs/avatar_api.mdAvatar 生成 API — 创建任务、查询进度、删除任务
docs/admin_api.mdAdmin 管理 API — 全局配置、会话监控、强制停止

5. Docker 运行

镜像说明:


6. 性能指标

  • 每路视频压缩消耗 CPU,分辨率越高 CPU 消耗越大;每路口型推理消耗 GPU
  • 不说话时并发数取决于 CPU,同时说话并发数取决于 GPU
  • 后端日志 inferfps = GPU 推理帧率, finalfps = 最终推流帧率,两者均需 >=25 才算实时

实时推理性能

模型显卡FPS
wav2lip256RTX 306060
wav2lip256RTX 3080Ti120
musetalkRTX 3080Ti42
musetalkRTX 309045
musetalkRTX 409072
  • wav2lip256 推荐 RTX 3060 及以上
  • musetalk 推荐 RTX 3080Ti 及以上

7. 声明

基于本项目开发并发布在B站、视频号、抖音等平台上的视频需带上 LiveTalking 水印和标识。


引用

如果本项目对您有帮助,期待您能给一个 Star⭐和引用

@software{livetalking,
author = {Hengzhong Li},
title = {LiveTalking: Real-Time Interactive Streaming Digital Human Framework},
year = {2025},
publisher = {GitHub},
url = {https://github.com/lipku/livetalking}
}

社区链接
知识星球https://t.zsxq.com/7NMyO
微信wxwubug (加群请备注)
Telegramhttps://t.me/livetalking
Discordhttps://discord.gg/n5jSPCT3Uf
Emaillipku@foxmail.com
微信公众号数字人技术

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

中文版 | English

lipku%2FLiveTalking | Trendshift

实时交互流式数字人引擎,实现音视频同步对话,已在业内获得广泛商用

效果演示: wav2lip | ernerf | musetalk

国内镜像: Gitee | GitCode


Features

  1. 支持多种数字人模型: ernerf、musetalk、wav2lip、Ultralight-Digital-Human
  2. 支持声音克隆
  3. 支持数字人说话被打断
  4. 支持全身视频拼接
  5. 支持 WebRTC、RTMP、虚拟摄像头输出
  6. 支持动作编排:不说话时播放自定义视频
  7. 支持多并发
  8. 支持自定义数字人形象
  9. 提供前端API接口对接

使用场景

LiveTalking 基于实时流式数字人技术,通过文本或语音驱动虚拟形象说话,结合 LLM 实现智能对话。适用于以下场景:

场景说明
虚拟主播/直播带货LiveStream24 小时无人直播,通过 LLM 自动生成带货话术,配合动作编排实现自然表现
AI 数字人客服接入企业知识库,用户语音提问,数字人实时回答,支持打断重说
在线教育/培训教师数字分身录制课程,或通过 API 驱动数字人讲师实时授课
智能语音助手结合智能音箱或 APP,调用 /human 接口驱动数字人进行语音对话交互
大屏讲解数字人讲解员在展厅大屏、活动现场等场景进行内容讲解和互动
短视频批量制作通过 API 批量提交文案生成数字人出镜视频,无需真人拍摄,调用 /human + /record 接口

核心流程:用户输入文字/音频 → LLM 生成回复(可选)→ TTS 合成语音 → 数字人实时口型同步 → 音视频推流输出


1. 安装

已在 Ubuntu 22.04、Python 3.12、PyTorch 2.9.1、CUDA 12.8 测试通过。

1.1 安装依赖

git clone https://github.com/lipku/LiveTalking.git conda create -n livetalking python=3.12
conda activate livetalking
# 如果 CUDA 版本不为 12.8 (运行 nvidia-smi 确认),请根据 PyTorch 官网(https://pytorch.org/get-started/previous-versions)安装对应版本
pip install torch==2.9.1 torchvision==0.24.1 torchaudio==2.9.1 --index-url https://download.pytorch.org/whl/cu128
cd LiveTalking
pip install -r requirements.txt

安装常见问题:FAQ

Linux CUDA 环境搭建参考: https://zhuanlan.zhihu.com/p/674972886


2. 快速开始

2.1 下载模型

网盘地址
夸克云盘https://pan.quark.cn/s/83a750323ef0
Google Drivehttps://drive.google.com/drive/folders/1FOC_MD6wdogyyX_7V1d4NDIO7P9NlSAJ?usp=sharing
  1. wav2lip256.pth 拷贝到项目的 models/ 目录下,重命名为 wav2lip.pth
  2. wav2lip256_avatar1.tar.gz 解压后整个文件夹拷贝到 data/avatars/ 目录下

2.2 启动服务

python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1

注意: 服务端需开放端口 TCP:8010, UDP:1-65536

2.3 客户端接入

方式说明
浏览器打开 http://serverip:8010/index.html,点击"开始连接"播放数字人视频,在文本框输入文字提交即可
API 调用参考 API 文档 通过 HTTP 接口驱动
桌面客户端下载地址: https://pan.quark.cn/s/d7192d8ac19b

2.4 Web 页面

页面地址说明
首页/index.htmlWebRTC 连接 + 文本/音频驱动 + 录制控制
Avatar 生成/avatar.html上传视频自动生成数字人形象
管理后台/admin.html实时监控会话状态与全局配置

2.5 快速体验

  1. 使用在线镜像创建实例即可运行: UCloud 镜像

  2. Windows整合包 https://pan.quark.cn/s/a040bf5cb065

  3. 商用版体验地址 https://www.livetalking.top

2.6 使用说明

3. 系统架构

数据流图

各层说明

API 层

  • /human: 接收文本,支持 echo(直接复读)和 chat(LLM 对话)模式
  • /humanaudio: 接收音频文件直接播放
  • 每个连接分配唯一 sessionid,支持多用户并发

逻辑层

  • LLM 引擎: 对接 Qwen 等大模型生成对话回复(也可通过OrcaRouter 等 OpenAI 兼容网关接入,--llm_provider orcarouter
  • TTS 引擎: 模块化设计,支持 EdgeTTS、GPT-SoVITS、CosyVoice、腾讯云等多种方案
  • 特征提取: 同步提取音频的声学特征(如 Mel 频谱),用于口型推理

渲染层

  • 模型推理: 使用深度学习模型 (Wav2Lip, MuseTalk 等) 根据音频特征生成口型画面
  • 后处理: 将生成的口型区域平滑贴回原始高清视频

推流层

  • WebRTC: 低延迟浏览器端推流
  • RTMP: 标准直播协议,支持推流到 B站/YouTube 等平台
  • 虚拟摄像头: 输出为系统摄像头设备

插件系统

  • 基于 registry.py 的去中心化注册机制,开发者可自行扩展 TTS、Avatar、Output 模块

4. API 接口

文档说明
docs/api.md通用业务 API — WebRTC、文本/音频驱动、录制、动作编排
docs/avatar_api.mdAvatar 生成 API — 创建任务、查询进度、删除任务
docs/admin_api.mdAdmin 管理 API — 全局配置、会话监控、强制停止

5. Docker 运行

镜像说明:


6. 性能指标

  • 每路视频压缩消耗 CPU,分辨率越高 CPU 消耗越大;每路口型推理消耗 GPU
  • 不说话时并发数取决于 CPU,同时说话并发数取决于 GPU
  • 后端日志 inferfps = GPU 推理帧率, finalfps = 最终推流帧率,两者均需 >=25 才算实时

实时推理性能

模型显卡FPS
wav2lip256RTX 306060
wav2lip256RTX 3080Ti120
musetalkRTX 3080Ti42
musetalkRTX 309045
musetalkRTX 409072
  • wav2lip256 推荐 RTX 3060 及以上
  • musetalk 推荐 RTX 3080Ti 及以上

7. 声明

基于本项目开发并发布在B站、视频号、抖音等平台上的视频需带上 LiveTalking 水印和标识。


引用

如果本项目对您有帮助,期待您能给一个 Star⭐和引用

@software{livetalking,
author = {Hengzhong Li},
title = {LiveTalking: Real-Time Interactive Streaming Digital Human Framework},
year = {2025},
publisher = {GitHub},
url = {https://github.com/lipku/livetalking}
}

社区链接
知识星球https://t.zsxq.com/7NMyO
微信wxwubug (加群请备注)
Telegramhttps://t.me/livetalking
Discordhttps://discord.gg/n5jSPCT3Uf
Emaillipku@foxmail.com
微信公众号数字人技术

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

中文版 | English

lipku%2FLiveTalking | Trendshift

实时交互流式数字人引擎,实现音视频同步对话,已在业内获得广泛商用

效果演示: wav2lip | ernerf | musetalk

国内镜像: Gitee | GitCode


Features

  1. 支持多种数字人模型: ernerf、musetalk、wav2lip、Ultralight-Digital-Human
  2. 支持声音克隆
  3. 支持数字人说话被打断
  4. 支持全身视频拼接
  5. 支持 WebRTC、RTMP、虚拟摄像头输出
  6. 支持动作编排:不说话时播放自定义视频
  7. 支持多并发
  8. 支持自定义数字人形象
  9. 提供前端API接口对接

使用场景

LiveTalking 基于实时流式数字人技术,通过文本或语音驱动虚拟形象说话,结合 LLM 实现智能对话。适用于以下场景:

场景说明
虚拟主播/直播带货LiveStream24 小时无人直播,通过 LLM 自动生成带货话术,配合动作编排实现自然表现
AI 数字人客服接入企业知识库,用户语音提问,数字人实时回答,支持打断重说
在线教育/培训教师数字分身录制课程,或通过 API 驱动数字人讲师实时授课
智能语音助手结合智能音箱或 APP,调用 /human 接口驱动数字人进行语音对话交互
大屏讲解数字人讲解员在展厅大屏、活动现场等场景进行内容讲解和互动
短视频批量制作通过 API 批量提交文案生成数字人出镜视频,无需真人拍摄,调用 /human + /record 接口

核心流程:用户输入文字/音频 → LLM 生成回复(可选)→ TTS 合成语音 → 数字人实时口型同步 → 音视频推流输出


1. 安装

已在 Ubuntu 22.04、Python 3.12、PyTorch 2.9.1、CUDA 12.8 测试通过。

1.1 安装依赖

git clone https://github.com/lipku/LiveTalking.git conda create -n livetalking python=3.12
conda activate livetalking
# 如果 CUDA 版本不为 12.8 (运行 nvidia-smi 确认),请根据 PyTorch 官网(https://pytorch.org/get-started/previous-versions)安装对应版本
pip install torch==2.9.1 torchvision==0.24.1 torchaudio==2.9.1 --index-url https://download.pytorch.org/whl/cu128
cd LiveTalking
pip install -r requirements.txt

安装常见问题:FAQ

Linux CUDA 环境搭建参考: https://zhuanlan.zhihu.com/p/674972886


2. 快速开始

2.1 下载模型

网盘地址
夸克云盘https://pan.quark.cn/s/83a750323ef0
Google Drivehttps://drive.google.com/drive/folders/1FOC_MD6wdogyyX_7V1d4NDIO7P9NlSAJ?usp=sharing
  1. wav2lip256.pth 拷贝到项目的 models/ 目录下,重命名为 wav2lip.pth
  2. wav2lip256_avatar1.tar.gz 解压后整个文件夹拷贝到 data/avatars/ 目录下

2.2 启动服务

python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1

注意: 服务端需开放端口 TCP:8010, UDP:1-65536

2.3 客户端接入

方式说明
浏览器打开 http://serverip:8010/index.html,点击"开始连接"播放数字人视频,在文本框输入文字提交即可
API 调用参考 API 文档 通过 HTTP 接口驱动
桌面客户端下载地址: https://pan.quark.cn/s/d7192d8ac19b

2.4 Web 页面

页面地址说明
首页/index.htmlWebRTC 连接 + 文本/音频驱动 + 录制控制
Avatar 生成/avatar.html上传视频自动生成数字人形象
管理后台/admin.html实时监控会话状态与全局配置

2.5 快速体验

  1. 使用在线镜像创建实例即可运行: UCloud 镜像

  2. Windows整合包 https://pan.quark.cn/s/a040bf5cb065

  3. 商用版体验地址 https://www.livetalking.top

2.6 使用说明

3. 系统架构

数据流图

各层说明

API 层

  • /human: 接收文本,支持 echo(直接复读)和 chat(LLM 对话)模式
  • /humanaudio: 接收音频文件直接播放
  • 每个连接分配唯一 sessionid,支持多用户并发

逻辑层

  • LLM 引擎: 对接 Qwen 等大模型生成对话回复(也可通过OrcaRouter 等 OpenAI 兼容网关接入,--llm_provider orcarouter
  • TTS 引擎: 模块化设计,支持 EdgeTTS、GPT-SoVITS、CosyVoice、腾讯云等多种方案
  • 特征提取: 同步提取音频的声学特征(如 Mel 频谱),用于口型推理

渲染层

  • 模型推理: 使用深度学习模型 (Wav2Lip, MuseTalk 等) 根据音频特征生成口型画面
  • 后处理: 将生成的口型区域平滑贴回原始高清视频

推流层

  • WebRTC: 低延迟浏览器端推流
  • RTMP: 标准直播协议,支持推流到 B站/YouTube 等平台
  • 虚拟摄像头: 输出为系统摄像头设备

插件系统

  • 基于 registry.py 的去中心化注册机制,开发者可自行扩展 TTS、Avatar、Output 模块

4. API 接口

文档说明
docs/api.md通用业务 API — WebRTC、文本/音频驱动、录制、动作编排
docs/avatar_api.mdAvatar 生成 API — 创建任务、查询进度、删除任务
docs/admin_api.mdAdmin 管理 API — 全局配置、会话监控、强制停止

5. Docker 运行

镜像说明:


6. 性能指标

  • 每路视频压缩消耗 CPU,分辨率越高 CPU 消耗越大;每路口型推理消耗 GPU
  • 不说话时并发数取决于 CPU,同时说话并发数取决于 GPU
  • 后端日志 inferfps = GPU 推理帧率, finalfps = 最终推流帧率,两者均需 >=25 才算实时

实时推理性能

模型显卡FPS
wav2lip256RTX 306060
wav2lip256RTX 3080Ti120
musetalkRTX 3080Ti42
musetalkRTX 309045
musetalkRTX 409072
  • wav2lip256 推荐 RTX 3060 及以上
  • musetalk 推荐 RTX 3080Ti 及以上

7. 声明

基于本项目开发并发布在B站、视频号、抖音等平台上的视频需带上 LiveTalking 水印和标识。


引用

如果本项目对您有帮助,期待您能给一个 Star⭐和引用

@software{livetalking,
author = {Hengzhong Li},
title = {LiveTalking: Real-Time Interactive Streaming Digital Human Framework},
year = {2025},
publisher = {GitHub},
url = {https://github.com/lipku/livetalking}
}

社区链接
知识星球https://t.zsxq.com/7NMyO
微信wxwubug (加群请备注)
Telegramhttps://t.me/livetalking
Discordhttps://discord.gg/n5jSPCT3Uf
Emaillipku@foxmail.com
微信公众号数字人技术

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

中文版 | English

lipku%2FLiveTalking | Trendshift

实时交互流式数字人引擎,实现音视频同步对话,已在业内获得广泛商用

效果演示: wav2lip | ernerf | musetalk

国内镜像: Gitee | GitCode


Features

  1. 支持多种数字人模型: ernerf、musetalk、wav2lip、Ultralight-Digital-Human
  2. 支持声音克隆
  3. 支持数字人说话被打断
  4. 支持全身视频拼接
  5. 支持 WebRTC、RTMP、虚拟摄像头输出
  6. 支持动作编排:不说话时播放自定义视频
  7. 支持多并发
  8. 支持自定义数字人形象
  9. 提供前端API接口对接

使用场景

LiveTalking 基于实时流式数字人技术,通过文本或语音驱动虚拟形象说话,结合 LLM 实现智能对话。适用于以下场景:

场景说明
虚拟主播/直播带货LiveStream24 小时无人直播,通过 LLM 自动生成带货话术,配合动作编排实现自然表现
AI 数字人客服接入企业知识库,用户语音提问,数字人实时回答,支持打断重说
在线教育/培训教师数字分身录制课程,或通过 API 驱动数字人讲师实时授课
智能语音助手结合智能音箱或 APP,调用 /human 接口驱动数字人进行语音对话交互
大屏讲解数字人讲解员在展厅大屏、活动现场等场景进行内容讲解和互动
短视频批量制作通过 API 批量提交文案生成数字人出镜视频,无需真人拍摄,调用 /human + /record 接口

核心流程:用户输入文字/音频 → LLM 生成回复(可选)→ TTS 合成语音 → 数字人实时口型同步 → 音视频推流输出


1. 安装

已在 Ubuntu 22.04、Python 3.12、PyTorch 2.9.1、CUDA 12.8 测试通过。

1.1 安装依赖

git clone https://github.com/lipku/LiveTalking.git conda create -n livetalking python=3.12
conda activate livetalking
# 如果 CUDA 版本不为 12.8 (运行 nvidia-smi 确认),请根据 PyTorch 官网(https://pytorch.org/get-started/previous-versions)安装对应版本
pip install torch==2.9.1 torchvision==0.24.1 torchaudio==2.9.1 --index-url https://download.pytorch.org/whl/cu128
cd LiveTalking
pip install -r requirements.txt

安装常见问题:FAQ

Linux CUDA 环境搭建参考: https://zhuanlan.zhihu.com/p/674972886


2. 快速开始

2.1 下载模型

网盘地址
夸克云盘https://pan.quark.cn/s/83a750323ef0
Google Drivehttps://drive.google.com/drive/folders/1FOC_MD6wdogyyX_7V1d4NDIO7P9NlSAJ?usp=sharing
  1. wav2lip256.pth 拷贝到项目的 models/ 目录下,重命名为 wav2lip.pth
  2. wav2lip256_avatar1.tar.gz 解压后整个文件夹拷贝到 data/avatars/ 目录下

2.2 启动服务

python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1

注意: 服务端需开放端口 TCP:8010, UDP:1-65536

2.3 客户端接入

方式说明
浏览器打开 http://serverip:8010/index.html,点击"开始连接"播放数字人视频,在文本框输入文字提交即可
API 调用参考 API 文档 通过 HTTP 接口驱动
桌面客户端下载地址: https://pan.quark.cn/s/d7192d8ac19b

2.4 Web 页面

页面地址说明
首页/index.htmlWebRTC 连接 + 文本/音频驱动 + 录制控制
Avatar 生成/avatar.html上传视频自动生成数字人形象
管理后台/admin.html实时监控会话状态与全局配置

2.5 快速体验

  1. 使用在线镜像创建实例即可运行: UCloud 镜像

  2. Windows整合包 https://pan.quark.cn/s/a040bf5cb065

  3. 商用版体验地址 https://www.livetalking.top

2.6 使用说明

3. 系统架构

数据流图

各层说明

API 层

  • /human: 接收文本,支持 echo(直接复读)和 chat(LLM 对话)模式
  • /humanaudio: 接收音频文件直接播放
  • 每个连接分配唯一 sessionid,支持多用户并发

逻辑层

  • LLM 引擎: 对接 Qwen 等大模型生成对话回复(也可通过OrcaRouter 等 OpenAI 兼容网关接入,--llm_provider orcarouter
  • TTS 引擎: 模块化设计,支持 EdgeTTS、GPT-SoVITS、CosyVoice、腾讯云等多种方案
  • 特征提取: 同步提取音频的声学特征(如 Mel 频谱),用于口型推理

渲染层

  • 模型推理: 使用深度学习模型 (Wav2Lip, MuseTalk 等) 根据音频特征生成口型画面
  • 后处理: 将生成的口型区域平滑贴回原始高清视频

推流层

  • WebRTC: 低延迟浏览器端推流
  • RTMP: 标准直播协议,支持推流到 B站/YouTube 等平台
  • 虚拟摄像头: 输出为系统摄像头设备

插件系统

  • 基于 registry.py 的去中心化注册机制,开发者可自行扩展 TTS、Avatar、Output 模块

4. API 接口

文档说明
docs/api.md通用业务 API — WebRTC、文本/音频驱动、录制、动作编排
docs/avatar_api.mdAvatar 生成 API — 创建任务、查询进度、删除任务
docs/admin_api.mdAdmin 管理 API — 全局配置、会话监控、强制停止

5. Docker 运行

镜像说明:


6. 性能指标

  • 每路视频压缩消耗 CPU,分辨率越高 CPU 消耗越大;每路口型推理消耗 GPU
  • 不说话时并发数取决于 CPU,同时说话并发数取决于 GPU
  • 后端日志 inferfps = GPU 推理帧率, finalfps = 最终推流帧率,两者均需 >=25 才算实时

实时推理性能

模型显卡FPS
wav2lip256RTX 306060
wav2lip256RTX 3080Ti120
musetalkRTX 3080Ti42
musetalkRTX 309045
musetalkRTX 409072
  • wav2lip256 推荐 RTX 3060 及以上
  • musetalk 推荐 RTX 3080Ti 及以上

7. 声明

基于本项目开发并发布在B站、视频号、抖音等平台上的视频需带上 LiveTalking 水印和标识。


引用

如果本项目对您有帮助,期待您能给一个 Star⭐和引用

@software{livetalking,
author = {Hengzhong Li},
title = {LiveTalking: Real-Time Interactive Streaming Digital Human Framework},
year = {2025},
publisher = {GitHub},
url = {https://github.com/lipku/livetalking}
}

社区链接
知识星球https://t.zsxq.com/7NMyO
微信wxwubug (加群请备注)
Telegramhttps://t.me/livetalking
Discordhttps://discord.gg/n5jSPCT3Uf
Emaillipku@foxmail.com
微信公众号数字人技术

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

中文版 | English

lipku%2FLiveTalking | Trendshift

实时交互流式数字人引擎,实现音视频同步对话,已在业内获得广泛商用

效果演示: wav2lip | ernerf | musetalk

国内镜像: Gitee | GitCode


Features

  1. 支持多种数字人模型: ernerf、musetalk、wav2lip、Ultralight-Digital-Human
  2. 支持声音克隆
  3. 支持数字人说话被打断
  4. 支持全身视频拼接
  5. 支持 WebRTC、RTMP、虚拟摄像头输出
  6. 支持动作编排:不说话时播放自定义视频
  7. 支持多并发
  8. 支持自定义数字人形象
  9. 提供前端API接口对接

使用场景

LiveTalking 基于实时流式数字人技术,通过文本或语音驱动虚拟形象说话,结合 LLM 实现智能对话。适用于以下场景:

场景说明
虚拟主播/直播带货LiveStream24 小时无人直播,通过 LLM 自动生成带货话术,配合动作编排实现自然表现
AI 数字人客服接入企业知识库,用户语音提问,数字人实时回答,支持打断重说
在线教育/培训教师数字分身录制课程,或通过 API 驱动数字人讲师实时授课
智能语音助手结合智能音箱或 APP,调用 /human 接口驱动数字人进行语音对话交互
大屏讲解数字人讲解员在展厅大屏、活动现场等场景进行内容讲解和互动
短视频批量制作通过 API 批量提交文案生成数字人出镜视频,无需真人拍摄,调用 /human + /record 接口

核心流程:用户输入文字/音频 → LLM 生成回复(可选)→ TTS 合成语音 → 数字人实时口型同步 → 音视频推流输出


1. 安装

已在 Ubuntu 22.04、Python 3.12、PyTorch 2.9.1、CUDA 12.8 测试通过。

1.1 安装依赖

git clone https://github.com/lipku/LiveTalking.git conda create -n livetalking python=3.12
conda activate livetalking
# 如果 CUDA 版本不为 12.8 (运行 nvidia-smi 确认),请根据 PyTorch 官网(https://pytorch.org/get-started/previous-versions)安装对应版本
pip install torch==2.9.1 torchvision==0.24.1 torchaudio==2.9.1 --index-url https://download.pytorch.org/whl/cu128
cd LiveTalking
pip install -r requirements.txt

安装常见问题:FAQ

Linux CUDA 环境搭建参考: https://zhuanlan.zhihu.com/p/674972886


2. 快速开始

2.1 下载模型

网盘地址
夸克云盘https://pan.quark.cn/s/83a750323ef0
Google Drivehttps://drive.google.com/drive/folders/1FOC_MD6wdogyyX_7V1d4NDIO7P9NlSAJ?usp=sharing
  1. wav2lip256.pth 拷贝到项目的 models/ 目录下,重命名为 wav2lip.pth
  2. wav2lip256_avatar1.tar.gz 解压后整个文件夹拷贝到 data/avatars/ 目录下

2.2 启动服务

python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1

注意: 服务端需开放端口 TCP:8010, UDP:1-65536

2.3 客户端接入

方式说明
浏览器打开 http://serverip:8010/index.html,点击"开始连接"播放数字人视频,在文本框输入文字提交即可
API 调用参考 API 文档 通过 HTTP 接口驱动
桌面客户端下载地址: https://pan.quark.cn/s/d7192d8ac19b

2.4 Web 页面

页面地址说明
首页/index.htmlWebRTC 连接 + 文本/音频驱动 + 录制控制
Avatar 生成/avatar.html上传视频自动生成数字人形象
管理后台/admin.html实时监控会话状态与全局配置

2.5 快速体验

  1. 使用在线镜像创建实例即可运行: UCloud 镜像

  2. Windows整合包 https://pan.quark.cn/s/a040bf5cb065

  3. 商用版体验地址 https://www.livetalking.top

2.6 使用说明

3. 系统架构

数据流图

各层说明

API 层

  • /human: 接收文本,支持 echo(直接复读)和 chat(LLM 对话)模式
  • /humanaudio: 接收音频文件直接播放
  • 每个连接分配唯一 sessionid,支持多用户并发

逻辑层

  • LLM 引擎: 对接 Qwen 等大模型生成对话回复(也可通过OrcaRouter 等 OpenAI 兼容网关接入,--llm_provider orcarouter
  • TTS 引擎: 模块化设计,支持 EdgeTTS、GPT-SoVITS、CosyVoice、腾讯云等多种方案
  • 特征提取: 同步提取音频的声学特征(如 Mel 频谱),用于口型推理

渲染层

  • 模型推理: 使用深度学习模型 (Wav2Lip, MuseTalk 等) 根据音频特征生成口型画面
  • 后处理: 将生成的口型区域平滑贴回原始高清视频

推流层

  • WebRTC: 低延迟浏览器端推流
  • RTMP: 标准直播协议,支持推流到 B站/YouTube 等平台
  • 虚拟摄像头: 输出为系统摄像头设备

插件系统

  • 基于 registry.py 的去中心化注册机制,开发者可自行扩展 TTS、Avatar、Output 模块

4. API 接口

文档说明
docs/api.md通用业务 API — WebRTC、文本/音频驱动、录制、动作编排
docs/avatar_api.mdAvatar 生成 API — 创建任务、查询进度、删除任务
docs/admin_api.mdAdmin 管理 API — 全局配置、会话监控、强制停止

5. Docker 运行

镜像说明:


6. 性能指标

  • 每路视频压缩消耗 CPU,分辨率越高 CPU 消耗越大;每路口型推理消耗 GPU
  • 不说话时并发数取决于 CPU,同时说话并发数取决于 GPU
  • 后端日志 inferfps = GPU 推理帧率, finalfps = 最终推流帧率,两者均需 >=25 才算实时

实时推理性能

模型显卡FPS
wav2lip256RTX 306060
wav2lip256RTX 3080Ti120
musetalkRTX 3080Ti42
musetalkRTX 309045
musetalkRTX 409072
  • wav2lip256 推荐 RTX 3060 及以上
  • musetalk 推荐 RTX 3080Ti 及以上

7. 声明

基于本项目开发并发布在B站、视频号、抖音等平台上的视频需带上 LiveTalking 水印和标识。


引用

如果本项目对您有帮助,期待您能给一个 Star⭐和引用

@software{livetalking,
author = {Hengzhong Li},
title = {LiveTalking: Real-Time Interactive Streaming Digital Human Framework},
year = {2025},
publisher = {GitHub},
url = {https://github.com/lipku/livetalking}
}

社区链接
知识星球https://t.zsxq.com/7NMyO
微信wxwubug (加群请备注)
Telegramhttps://t.me/livetalking
Discordhttps://discord.gg/n5jSPCT3Uf
Emaillipku@foxmail.com
微信公众号数字人技术

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

中文版 | English

lipku%2FLiveTalking | Trendshift

实时交互流式数字人引擎,实现音视频同步对话,已在业内获得广泛商用

效果演示: wav2lip | ernerf | musetalk

国内镜像: Gitee | GitCode


Features

  1. 支持多种数字人模型: ernerf、musetalk、wav2lip、Ultralight-Digital-Human
  2. 支持声音克隆
  3. 支持数字人说话被打断
  4. 支持全身视频拼接
  5. 支持 WebRTC、RTMP、虚拟摄像头输出
  6. 支持动作编排:不说话时播放自定义视频
  7. 支持多并发
  8. 支持自定义数字人形象
  9. 提供前端API接口对接

使用场景

LiveTalking 基于实时流式数字人技术,通过文本或语音驱动虚拟形象说话,结合 LLM 实现智能对话。适用于以下场景:

场景说明
虚拟主播/直播带货LiveStream24 小时无人直播,通过 LLM 自动生成带货话术,配合动作编排实现自然表现
AI 数字人客服接入企业知识库,用户语音提问,数字人实时回答,支持打断重说
在线教育/培训教师数字分身录制课程,或通过 API 驱动数字人讲师实时授课
智能语音助手结合智能音箱或 APP,调用 /human 接口驱动数字人进行语音对话交互
大屏讲解数字人讲解员在展厅大屏、活动现场等场景进行内容讲解和互动
短视频批量制作通过 API 批量提交文案生成数字人出镜视频,无需真人拍摄,调用 /human + /record 接口

核心流程:用户输入文字/音频 → LLM 生成回复(可选)→ TTS 合成语音 → 数字人实时口型同步 → 音视频推流输出


1. 安装

已在 Ubuntu 22.04、Python 3.12、PyTorch 2.9.1、CUDA 12.8 测试通过。

1.1 安装依赖

git clone https://github.com/lipku/LiveTalking.git conda create -n livetalking python=3.12
conda activate livetalking
# 如果 CUDA 版本不为 12.8 (运行 nvidia-smi 确认),请根据 PyTorch 官网(https://pytorch.org/get-started/previous-versions)安装对应版本
pip install torch==2.9.1 torchvision==0.24.1 torchaudio==2.9.1 --index-url https://download.pytorch.org/whl/cu128
cd LiveTalking
pip install -r requirements.txt

安装常见问题:FAQ

Linux CUDA 环境搭建参考: https://zhuanlan.zhihu.com/p/674972886


2. 快速开始

2.1 下载模型

网盘地址
夸克云盘https://pan.quark.cn/s/83a750323ef0
Google Drivehttps://drive.google.com/drive/folders/1FOC_MD6wdogyyX_7V1d4NDIO7P9NlSAJ?usp=sharing
  1. wav2lip256.pth 拷贝到项目的 models/ 目录下,重命名为 wav2lip.pth
  2. wav2lip256_avatar1.tar.gz 解压后整个文件夹拷贝到 data/avatars/ 目录下

2.2 启动服务

python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1

注意: 服务端需开放端口 TCP:8010, UDP:1-65536

2.3 客户端接入

方式说明
浏览器打开 http://serverip:8010/index.html,点击"开始连接"播放数字人视频,在文本框输入文字提交即可
API 调用参考 API 文档 通过 HTTP 接口驱动
桌面客户端下载地址: https://pan.quark.cn/s/d7192d8ac19b

2.4 Web 页面

页面地址说明
首页/index.htmlWebRTC 连接 + 文本/音频驱动 + 录制控制
Avatar 生成/avatar.html上传视频自动生成数字人形象
管理后台/admin.html实时监控会话状态与全局配置

2.5 快速体验

  1. 使用在线镜像创建实例即可运行: UCloud 镜像

  2. Windows整合包 https://pan.quark.cn/s/a040bf5cb065

  3. 商用版体验地址 https://www.livetalking.top

2.6 使用说明

3. 系统架构

数据流图

各层说明

API 层

  • /human: 接收文本,支持 echo(直接复读)和 chat(LLM 对话)模式
  • /humanaudio: 接收音频文件直接播放
  • 每个连接分配唯一 sessionid,支持多用户并发

逻辑层

  • LLM 引擎: 对接 Qwen 等大模型生成对话回复(也可通过OrcaRouter 等 OpenAI 兼容网关接入,--llm_provider orcarouter
  • TTS 引擎: 模块化设计,支持 EdgeTTS、GPT-SoVITS、CosyVoice、腾讯云等多种方案
  • 特征提取: 同步提取音频的声学特征(如 Mel 频谱),用于口型推理

渲染层

  • 模型推理: 使用深度学习模型 (Wav2Lip, MuseTalk 等) 根据音频特征生成口型画面
  • 后处理: 将生成的口型区域平滑贴回原始高清视频

推流层

  • WebRTC: 低延迟浏览器端推流
  • RTMP: 标准直播协议,支持推流到 B站/YouTube 等平台
  • 虚拟摄像头: 输出为系统摄像头设备

插件系统

  • 基于 registry.py 的去中心化注册机制,开发者可自行扩展 TTS、Avatar、Output 模块

4. API 接口

文档说明
docs/api.md通用业务 API — WebRTC、文本/音频驱动、录制、动作编排
docs/avatar_api.mdAvatar 生成 API — 创建任务、查询进度、删除任务
docs/admin_api.mdAdmin 管理 API — 全局配置、会话监控、强制停止

5. Docker 运行

镜像说明:


6. 性能指标

  • 每路视频压缩消耗 CPU,分辨率越高 CPU 消耗越大;每路口型推理消耗 GPU
  • 不说话时并发数取决于 CPU,同时说话并发数取决于 GPU
  • 后端日志 inferfps = GPU 推理帧率, finalfps = 最终推流帧率,两者均需 >=25 才算实时

实时推理性能

模型显卡FPS
wav2lip256RTX 306060
wav2lip256RTX 3080Ti120
musetalkRTX 3080Ti42
musetalkRTX 309045
musetalkRTX 409072
  • wav2lip256 推荐 RTX 3060 及以上
  • musetalk 推荐 RTX 3080Ti 及以上

7. 声明

基于本项目开发并发布在B站、视频号、抖音等平台上的视频需带上 LiveTalking 水印和标识。


引用

如果本项目对您有帮助,期待您能给一个 Star⭐和引用

@software{livetalking,
author = {Hengzhong Li},
title = {LiveTalking: Real-Time Interactive Streaming Digital Human Framework},
year = {2025},
publisher = {GitHub},
url = {https://github.com/lipku/livetalking}
}

社区链接
知识星球https://t.zsxq.com/7NMyO
微信wxwubug (加群请备注)
Telegramhttps://t.me/livetalking
Discordhttps://discord.gg/n5jSPCT3Uf
Emaillipku@foxmail.com
微信公众号数字人技术

Releases

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

中文版 | English

lipku%2FLiveTalking | Trendshift

实时交互流式数字人引擎,实现音视频同步对话,已在业内获得广泛商用

效果演示: wav2lip | ernerf | musetalk

国内镜像: Gitee | GitCode


Features

  1. 支持多种数字人模型: ernerf、musetalk、wav2lip、Ultralight-Digital-Human
  2. 支持声音克隆
  3. 支持数字人说话被打断
  4. 支持全身视频拼接
  5. 支持 WebRTC、RTMP、虚拟摄像头输出
  6. 支持动作编排:不说话时播放自定义视频
  7. 支持多并发
  8. 支持自定义数字人形象
  9. 提供前端API接口对接

使用场景

LiveTalking 基于实时流式数字人技术,通过文本或语音驱动虚拟形象说话,结合 LLM 实现智能对话。适用于以下场景:

场景说明
虚拟主播/直播带货LiveStream24 小时无人直播,通过 LLM 自动生成带货话术,配合动作编排实现自然表现
AI 数字人客服接入企业知识库,用户语音提问,数字人实时回答,支持打断重说
在线教育/培训教师数字分身录制课程,或通过 API 驱动数字人讲师实时授课
智能语音助手结合智能音箱或 APP,调用 /human 接口驱动数字人进行语音对话交互
大屏讲解数字人讲解员在展厅大屏、活动现场等场景进行内容讲解和互动
短视频批量制作通过 API 批量提交文案生成数字人出镜视频,无需真人拍摄,调用 /human + /record 接口

核心流程:用户输入文字/音频 → LLM 生成回复(可选)→ TTS 合成语音 → 数字人实时口型同步 → 音视频推流输出


1. 安装

已在 Ubuntu 22.04、Python 3.12、PyTorch 2.9.1、CUDA 12.8 测试通过。

1.1 安装依赖

git clone https://github.com/lipku/LiveTalking.git conda create -n livetalking python=3.12
conda activate livetalking
# 如果 CUDA 版本不为 12.8 (运行 nvidia-smi 确认),请根据 PyTorch 官网(https://pytorch.org/get-started/previous-versions)安装对应版本
pip install torch==2.9.1 torchvision==0.24.1 torchaudio==2.9.1 --index-url https://download.pytorch.org/whl/cu128
cd LiveTalking
pip install -r requirements.txt

安装常见问题:FAQ

Linux CUDA 环境搭建参考: https://zhuanlan.zhihu.com/p/674972886


2. 快速开始

2.1 下载模型

网盘地址
夸克云盘https://pan.quark.cn/s/83a750323ef0
Google Drivehttps://drive.google.com/drive/folders/1FOC_MD6wdogyyX_7V1d4NDIO7P9NlSAJ?usp=sharing
  1. wav2lip256.pth 拷贝到项目的 models/ 目录下,重命名为 wav2lip.pth
  2. wav2lip256_avatar1.tar.gz 解压后整个文件夹拷贝到 data/avatars/ 目录下

2.2 启动服务

python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1

注意: 服务端需开放端口 TCP:8010, UDP:1-65536

2.3 客户端接入

方式说明
浏览器打开 http://serverip:8010/index.html,点击"开始连接"播放数字人视频,在文本框输入文字提交即可
API 调用参考 API 文档 通过 HTTP 接口驱动
桌面客户端下载地址: https://pan.quark.cn/s/d7192d8ac19b

2.4 Web 页面

页面地址说明
首页/index.htmlWebRTC 连接 + 文本/音频驱动 + 录制控制
Avatar 生成/avatar.html上传视频自动生成数字人形象
管理后台/admin.html实时监控会话状态与全局配置

2.5 快速体验

  1. 使用在线镜像创建实例即可运行: UCloud 镜像

  2. Windows整合包 https://pan.quark.cn/s/a040bf5cb065

  3. 商用版体验地址 https://www.livetalking.top

2.6 使用说明

3. 系统架构

数据流图

各层说明

API 层

  • /human: 接收文本,支持 echo(直接复读)和 chat(LLM 对话)模式
  • /humanaudio: 接收音频文件直接播放
  • 每个连接分配唯一 sessionid,支持多用户并发

逻辑层

  • LLM 引擎: 对接 Qwen 等大模型生成对话回复(也可通过OrcaRouter 等 OpenAI 兼容网关接入,--llm_provider orcarouter
  • TTS 引擎: 模块化设计,支持 EdgeTTS、GPT-SoVITS、CosyVoice、腾讯云等多种方案
  • 特征提取: 同步提取音频的声学特征(如 Mel 频谱),用于口型推理

渲染层

  • 模型推理: 使用深度学习模型 (Wav2Lip, MuseTalk 等) 根据音频特征生成口型画面
  • 后处理: 将生成的口型区域平滑贴回原始高清视频

推流层

  • WebRTC: 低延迟浏览器端推流
  • RTMP: 标准直播协议,支持推流到 B站/YouTube 等平台
  • 虚拟摄像头: 输出为系统摄像头设备

插件系统

  • 基于 registry.py 的去中心化注册机制,开发者可自行扩展 TTS、Avatar、Output 模块

4. API 接口

文档说明
docs/api.md通用业务 API — WebRTC、文本/音频驱动、录制、动作编排
docs/avatar_api.mdAvatar 生成 API — 创建任务、查询进度、删除任务
docs/admin_api.mdAdmin 管理 API — 全局配置、会话监控、强制停止

5. Docker 运行

镜像说明:


6. 性能指标

  • 每路视频压缩消耗 CPU,分辨率越高 CPU 消耗越大;每路口型推理消耗 GPU
  • 不说话时并发数取决于 CPU,同时说话并发数取决于 GPU
  • 后端日志 inferfps = GPU 推理帧率, finalfps = 最终推流帧率,两者均需 >=25 才算实时

实时推理性能

模型显卡FPS
wav2lip256RTX 306060
wav2lip256RTX 3080Ti120
musetalkRTX 3080Ti42
musetalkRTX 309045
musetalkRTX 409072
  • wav2lip256 推荐 RTX 3060 及以上
  • musetalk 推荐 RTX 3080Ti 及以上

7. 声明

基于本项目开发并发布在B站、视频号、抖音等平台上的视频需带上 LiveTalking 水印和标识。


引用

如果本项目对您有帮助,期待您能给一个 Star⭐和引用

@software{livetalking,
author = {Hengzhong Li},
title = {LiveTalking: Real-Time Interactive Streaming Digital Human Framework},
year = {2025},
publisher = {GitHub},
url = {https://github.com/lipku/livetalking}
}

社区链接
知识星球https://t.zsxq.com/7NMyO
微信wxwubug (加群请备注)
Telegramhttps://t.me/livetalking
Discordhttps://discord.gg/n5jSPCT3Uf
Emaillipku@foxmail.com
微信公众号数字人技术

Releases

Sponsor this project

Used by

Contributors

Languages