You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
fanpt 49c0361f89 README.md 12 hours ago
.github Create FUNDING.yml 5 months ago
assets update readme 1 year ago
data Add avatars/model_4_1 images via Git LFS 16 hours ago
models Add wav2lip384.pth via Git LFS (force add) 3 days ago
musetalk (new) 聚合前端;musetalk过渡优化;bugfix (#407) 4 months ago
ultralight support mac m1-m4 (#376) 4 months ago
wav2lip 添加模型文件 3 days ago
web fix log 4 months ago
.gitattributes Configure Git LFS for data/avatars/model_4_1 16 hours ago
.gitignore update readme 4 months ago
Dockerfile add docker 2 years ago
LICENSE fix jquery.js 9 months ago
README-EN.md Modify some function name 3 months ago
README.md README.md 12 hours ago
README.md.bac README.md 12 hours ago
app.py 修改参数 3 days ago
baseasr.py fix typing 5 months ago
basereal.py add doubao tts 3 weeks ago
hubertasr.py add eventpoint sync with audio 6 months ago
lightreal.py Implement process_frame in the parent class BaseReal and add virtual camera output 2 months ago
lipasr.py add eventpoint sync with audio 6 months ago
lipreal.py 修改参数 3 days ago
llm.py 修改参数 3 days ago
logger.py fix log 5 months ago
museasr.py add eventpoint sync with audio 6 months ago
musereal.py Implement process_frame in the parent class BaseReal and add virtual camera output 2 months ago
requirements.txt add doubao tts 3 weeks ago
ttsreal.py add doubao tts 3 weeks ago
webrtc.py fix timestamp may overflow 3 months ago

README.md

直播数字人 (Live Digital Avatar) 启动说明

项目简介

项目名称:

  • 中文:直播数字人
  • 英文live-digital-avatar

项目描述: 实时交互流式数字人系统实现音视频同步对话可达到商用效果。支持多种数字人模型包括wav2lip、musetalk、Ultralight-Digital-Human等。

系统要求

硬件要求

  • GPU: NVIDIA显卡推荐RTX 3060及以上
    • wav2lip256模型RTX 3060及以上
    • musetalk模型RTX 3080Ti及以上
  • CPU: 多核处理器,用于视频压缩处理
  • 内存: 建议16GB以上
  • 存储: 至少10GB可用空间

软件要求

  • 操作系统: Ubuntu 24.04 (推荐) / Windows 10/11
  • Python: 3.10
  • CUDA: 12.4 (根据显卡驱动版本调整)
  • PyTorch: 2.5.0

安装步骤

1. 环境准备

创建Python虚拟环境

# 创建conda环境
conda create -n livetalking python=3.10
conda activate livetalking

安装PyTorch

# 安装PyTorch (根据您的CUDA版本调整)
# CUDA 12.4
conda install pytorch==2.5.0 torchvision==0.20.0 torchaudio==2.5.0 pytorch-cuda=12.4 -c pytorch -c nvidia

# 如果CUDA版本不同请访问 https://pytorch.org/get-started/previous-versions/ 选择对应版本

安装项目依赖

# 安装项目依赖包
pip install -r requirements.txt

2. 模型下载

下载预训练模型

项目需要下载预训练模型文件,您可以从以下地址下载:

夸克云盘: https://pan.quark.cn/s/83a750323ef0
Google Drive: https://drive.google.com/drive/folders/1FOC_MD6wdogyyX_7V1d4NDIO7P9NlSAJ?usp=sharing

模型文件放置

下载完成后,请按以下步骤放置模型文件:

  1. wav2lip256.pth 复制到项目的 models/ 目录下,并重命名为 wav2lip.pth
  2. wav2lip256_avatar1.tar.gz 解压后,将整个文件夹复制到项目的 data/avatars/ 目录下

3. 网络配置

重要: 服务端需要开放以下端口:

  • TCP端口: 8010 (Web服务)
  • UDP端口: 1-65536 (WebRTC通信)

启动数字人

基本启动命令

# 激活环境
conda activate livetalking

# 启动数字人服务
python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1

启动参数说明

  • --transport webrtc: 使用WebRTC传输协议
  • --model wav2lip: 使用wav2lip模型
  • --avatar_id wav2lip256_avatar1: 指定数字人形象ID

其他启动选项

# 使用musetalk模型
python app.py --transport webrtc --model musetalk --avatar_id your_avatar_id

# 使用Ultralight模型
python app.py --transport webrtc --model ultralight --avatar_id your_avatar_id

# 指定端口
python app.py --transport webrtc --model wav2lip --avatar_id wav2lip256_avatar1 --port 8010

客户端访问

方式一:浏览器访问

  1. 在浏览器中打开: http://服务器IP:8010/webrtcapi.html
  2. 点击 'start' 按钮开始播放数字人视频
  3. 在文本框中输入任意文字并提交,数字人将播报该段文字

方式二:客户端软件

快速体验

如果您想快速体验,可以使用以下云服务镜像:

UCloud镜像: https://www.compshare.cn/images/4458094e-a43d-45fe-9b57-de79253befe4?referral_code=3XW3852OBmnD089hMMrtuU&ytag=GPU_GitHub_livetalking

使用该镜像创建实例即可直接运行成功。

Docker运行

如果您不想手动安装环境可以直接使用Docker运行

docker run --gpus all -it --network=host --rm registry.cn-beijing.aliyuncs.com/codewithgpu2/lipku-metahuman-stream:2K9qaMBu8v

代码位于 /root/metahuman-stream,先执行 git pull 拉取最新代码,然后按照上述步骤启动。

性能参考

模型 显卡型号 FPS
wav2lip256 RTX 3060 60
musetalk RTX 3080Ti 45
wav2lip256 RTX 3080Ti 120

性能说明:

  • 不说话时的并发数取决于CPU性能
  • 同时说话的并发数取决于GPU性能
  • 后端日志中 inferfps 表示显卡推理帧率,finalfps 表示最终推流帧率
  • 两者都要在25以上才能实现实时效果

常见问题

1. 访问HuggingFace问题

如果访问不了huggingface在运行前设置

export HF_ENDPOINT=https://hf-mirror.com

2. 视频连接问题

如果遇到视频连接问题,请参考:https://mp.weixin.qq.com/s/MVUkxxhV2cgMMHalphr2cg

3. 安装问题

详细安装FAQ请参考https://livetalking-doc.readthedocs.io/zh-cn/latest/faq.html

技术支持

声明

基于本项目开发并发布在B站、视频号、抖音等网站上的视频需带上LiveTalking水印和标识如需去除请联系作者备案授权。


如果本项目对您有帮助欢迎给项目点个star也欢迎感兴趣的朋友一起来完善该项目。