LiveTalking 部署笔记

目录

github地址:

更新wav2lip384高清模型

csdn教程:

[二、LiveTalking 部署流程](#二、LiveTalking 部署流程)

[1. 代码拉取与环境创建](#1. 代码拉取与环境创建)

[3. 模型下载与部署](#3. 模型下载与部署)

[4. 启动 LiveTalking](#4. 启动 LiveTalking)

[三、自定义数字人部署(基于 MuseTalk)](#三、自定义数字人部署(基于 MuseTalk))

[Download weights 下载权重](#Download weights 下载权重)

四、常见问题与解决方案

[问题 1:模型误用导致界面卡死](#问题 1:模型误用导致界面卡死)

现象:

原因:

解决方案:

[问题 2:MuseTalk 预处理仅生成 train.txt,训练提示 "数据不足"](#问题 2:MuseTalk 预处理仅生成 train.txt,训练提示 “数据不足”)

现象:

排查与解决方案:

五、关键注意事项

[报错:AttributeError: module 'torch' has no attribute 'xpu'](#报错:AttributeError: module 'torch' has no attribute 'xpu')


github地址:

https://github.com/lipku/LiveTalking?tab=readme-ov-file

https://gitee.com/lipku/LiveTalking

更新wav2lip384高清模型

需要8G显存,目前已失效

https://github.com/Eikwang/LiveTalking/tree/master

wav2lip384生成器网格权重,链接已失效

信守承诺------更新算法就会把之前的权重开放

此权重超过50w步,损失0.28

口型非常完美

推理部分拉普拉斯平滑可替换为其他处理方式

脸部检测可以不用face alignment

模型下载:

https://github.com/TMElyralab/MuseTalk#option-1-using-download-scripts

LiveTalking 部署笔记

csdn教程:

https://blog.csdn.net/qq_62374932/article/details/150558109

二、LiveTalking 部署流程

1. 代码拉取与环境创建
复制代码
# 安装基础依赖
pip install -r requirements.txt

# 配置FFmpeg路径(已提前安装系统级FFmpeg)
export FFMPEG_PATH=/usr/bin/ffmpeg  # 替换为实际FFmpeg路径

# 安装MMLab系列库(计算机视觉核心依赖)
pip install --no-cache-dir -U openmim
mim install mmengine 
mim install "mmcv>=2.0.1" 
mim install "mmdet>=3.1.0" 
mim install "mmpose>=1.1.0"
3. 模型下载与部署
  • 下载 MuseTalk 所需模型:迅雷链接
  • 模型文件整理:
    • models 文件夹内容复制到项目根目录 models/ 下;
    • musetalk_avatar1.tar.gz 解压后,复制到 data/avatars/ 下(默认数字人)。
4. 启动 LiveTalking
复制代码
python app.py --transport webrtc --model musetalk --avatar_id musetalk_avatar1

访问网页:http://[本地IP]:8010/dashboard.html,点击 "连接" 即可测试默认数字人。

三、自定义数字人部署(基于 MuseTalk)

我准备的是一段十秒钟2k的数字人视频

这里还是使用Musetalk方案

Download weights 下载权重

您可以采用两种方式下载权重:

选项 1:使用下载脚本(推荐)

我们提供了两个用于自动下载的脚本:

sh ./download_weights.sh

选项 2:手动下载(运行少什么可以单独下)

您也可以从以下链接手动下载权重:

  1. 下载我们的训练权重
  2. 下载其他组件的权重:
    • sd-vae-ft-mse
    • whisper
    • dwpose
    • syncnet
    • face-parse-bisent
    • resnet18

Finally, these weights should be organized in models as follows:最后,这些权重应该按以下方式组织在 models 中:

把自己的视频放在这个路径下我命名为1.mp4

cd MuseTalk

修改配置文件 configs/inference/realtime.yaml

我音频使用的默认yongen.wav,视频使用的自己的1.mp4(如下图)

执行预处理

复制代码
sh inference.sh v1.5 realtime

运行之后会出现新的avator: avator_1(文件夹)

运行后将results/avatars下文件拷到LiveTalking的data/avatars下

然后运行Livetalking

python app.py --transport webrtc --model musetalk --avatar_id avator_1

访问网页

http://10.0.0.202:8010/dashboard.html(前面换成自己本地ip)

点击连接就可以了

如果要使用对话模式修改llm.py中api调用接口

export DASHSCOPE_API_KEY=<your_api_key>

四、常见问题与解决方案

问题 1:模型误用导致界面卡死
现象:

用 MuseTalk 处理的数字人文件夹(avator_1)搭配 wav2lip 模型运行,界面加载后输入内容即卡死。

原因:

不同数字人模型(MuseTalk vs wav2lip)依赖的文件结构不同:

  • MuseTalk 输出包含人脸特征帧、音频对齐参数
  • wav2lip 需要原始人脸图像序列(face_imgs),结构不匹配导致数据解析失败。
解决方案:
  • 严格匹配模型与数字人文件夹:MuseTalk 模型对应 MuseTalk 预处理的文件夹,wav2lip 对应其专用预处理结果;
  • 若需用 wav2lip,需重新用 wav2lip 的预处理脚本生成 face_imgs 文件夹。
问题 2:MuseTalk 预处理仅生成 train.txt,训练提示 "数据不足"
现象:

执行 MuseTalk 训练预处理脚本后,仅生成 train.txt(内容为 JSON),正式训练时提示 "样本数不足"。

排查与解决方案:

MuseTalk 训练需要视频帧、音频特征、人脸关键点 等多维度数据,仅生成 train.txt 说明预处理不完整,需按以下步骤排查:

  1. 检查预处理日志

    预处理脚本会输出人脸检测、帧提取日志,若存在 "No face detected""Frame extraction failed",说明视频中人脸未被正确识别(2K 视频可能因分辨率过高导致检测模型失效)。

    ✅ 解决:降低视频分辨率(如 1080P),确保人脸清晰无遮挡,重新预处理。

  2. 验证输出文件结构

    正常预处理应生成以下文件(若缺失则数据不足):

    复制代码
    ./data/processed/
    ├── frames/  # 视频帧图像(每帧一张图)
    ├── audio/  # 音频特征文件
    ├── keypoints/  # 人脸关键点数据
    └── train.txt  # 标注文件(关联帧、音频、关键点)

    ✅ 解决:检查 configs/preprocess.yamloutput_dir 路径是否正确,确保脚本有权限写入数据。

  3. 检查输入数据量

    MuseTalk 训练至少需要1000 + 帧数据 ,10 秒视频按 25FPS 计算仅 250 帧,样本量不足。

    ✅ 解决:使用更长视频(如 1 分钟以上),或在预处理时调整帧采样率(修改配置文件 frame_sample_rate: 1 即每帧都保留)。

  4. 依赖库兼容性问题

    mmdet、mmpose 版本不匹配可能导致人脸检测 / 关键点提取失败,无数据生成。

    ✅ 解决:严格安装指定版本:mmcv==2.0.1mmdet==3.1.0mmpose==1.1.0,并运行测试代码验证:

    复制代码
    # 测试人脸检测
    from mmdet.apis import init_detector, inference_detector
    model = init_detector("./configs/dwpose/detector/yolox_s_8x8_300e_coco.py", "./models/dwpose/yolox_s_8x8_300e_coco_20211121_095414-4592a793.pth")
    result = inference_detector(model, "./1.mp4_frame_0.jpg")  # 替换为实际帧图像
    print("检测到人脸数:", len(result[0][result[0][:,4]>0.5]))  # 应输出>=1

五、关键注意事项

  1. 版本兼容性:CUDA 版本需与 PyTorch、MMLab 库严格匹配(参考官方文档);
  2. 模型路径:所有模型文件需按指定目录结构存放,路径错误会导致加载失败;
  3. 硬件资源:3090 显卡需确保显存充足(预处理时建议关闭其他占用显存的程序);
  4. 自定义视频:优先使用光线充足、人脸正面、无剧烈动作的视频,提升预处理成功率。

报错:AttributeError: module 'torch' has no attribute 'xpu'

bash 复制代码
pip install diffusers==0.21.4 \
            huggingface_hub==0.16.4 \
            accelerate==0.21.0 \
            transformers==4.33.3
			
			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

requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://hf-mirror.com/models/sd-vae/resolve/main/config.json

相关推荐
倘若猫爱上鱼2 小时前
关于系统能检测到固态可移动硬盘(或U盘),系统资源管理器却始终无法扫描到固态可移动硬盘(或U盘)的解决办法
笔记
求真求知的糖葫芦3 小时前
巴伦学习(一)一种新型补偿传输线巴伦论文学习笔记(自用)
笔记·学习·射频工程
GLDbalala3 小时前
GPU PRO 4 - 5.3 A Pipeline for Authored Structural Damage 笔记
笔记
三伏5224 小时前
Cortex-M3重启流程——笔记
笔记·cortex-m3
方见华Richard5 小时前
方见华:在递归的暗夜里,把自己活成一束光
人工智能·经验分享·笔记·学习方法·空间计算
zzcufo5 小时前
多邻国学习笔记第五阶段第10-11部分
笔记·学习·c#
BlackWolfSky5 小时前
鸿蒙中级课程笔记2—状态管理V2—@ObservedV2装饰器和@Trace装饰器:类属性变化观测
笔记·华为·harmonyos
航Hang*6 小时前
计算机等级考试(二级WPS)---第1章:综合应用基础---第2节:PDF文件应用
笔记·学习·pdf·wps·计算机二级·计算机等级考试
zhangrelay6 小时前
Linux(ubuntu)如何锁定cpu频率工作在最低能耗模式下
linux·笔记·学习