news 2026/9/12 14:59:40

SadTalker安装教程:30分钟从环境搭建到跑通第一条说话视频

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SadTalker安装教程:30分钟从环境搭建到跑通第一条说话视频

SadTalker安装教程:30分钟从环境搭建到跑通第一条说话视频

【免费下载链接】SadTalker[CVPR 2023] SadTalker:Learning Realistic 3D Motion Coefficients for Stylized Audio-Driven Single Image Talking Face Animation项目地址: https://gitcode.com/GitHub_Trending/sa/SadTalker

手里有一张静态照片,还有一段录音,想让照片"开口"念出来?这就是 SadTalker 做的事:输入一张人像图片和一段音频,输出一段口型、表情与声音同步的说话视频(CVPR 2023)。下面按实际操作顺序带你完成 SadTalker安装、模型下载和第一次推理,全程约半小时。

跑通第一条视频:SadTalker 环境搭建四步 🚦

整条路线只有四步:克隆仓库、建环境、装依赖、下模型,最后跑一条命令出片。按顺序执行即可。

第 1 步:克隆仓库

git clone https://gitcode.com/GitHub_Trending/sa/SadTalker cd SadTalker

第 2 步:建独立 Python 环境

项目依赖锁定在 Python 3.8,用 conda 隔离最省事:

conda create -n sadtalker python=3.8 conda activate sadtalker

第 3 步:装 PyTorch 和全部依赖

pip install torch torchvision torchaudio conda install ffmpeg pip install -r requirements.txt
  • PyTorch 请选与你显卡驱动匹配的版本;没有独显的机器直接装 CPU 版即可。
  • ffmpeg是视频读写工具,后面合成 mp4 全靠它,Windows 原生环境装完请确认ffmpeg%PATH%里。
  • macOS(Apple 芯片)用户额外执行一次pip install dlib,这是唯一需要单独处理的依赖。

第 4 步:下载模型文件

bash scripts/download_models.sh

脚本会把 4 个核心权重放进./checkpoints/:两个映射网络mapping_00109-model.pth.tarmapping_00229-model.pth.tar,以及新版 safetensors 格式的SadTalker_V0.0.2_256.safetensorsSadTalker_V0.0.2_512.safetensors(对应 256/512 两种输出分辨率)。wget -nc参数会让已存在的文件自动跳过,脚本可以放心重复执行。

跑第一条命令

依赖和模型就位后,直接用仓库自带的示例音频和示例图片出片:

python inference.py \ --driven_audio examples/driven_audio/bus_chinese.wav \ --source_image examples/source_image/full_body_1.png \ --result_dir ./results

运行结束后,./results/下会生成一个带时间戳的 mp4 文件,这就是你第一条说话视频。想换素材时,把--driven_audio--source_image指到自己的 wav 和照片路径即可。

按你的机器选参数:GPU 与 CPU 两套命令 🖥️

先跑通 256 分辨率,再按硬件上调参数,比一步到位更稳。

硬件要求速查

项目最低配置推荐配置
GPU 环境RTX 2060(6GB 显存)RTX 3060 及以上(8GB+ 显存)
CPU 环境i5i7 / i9
内存8GB16GB+
磁盘空间10GB 可用20GB+ 可用

GPU 与 CPU 实测对比

维度GPUCPU
10 秒音频的生成耗时15–30 秒3–5 分钟
内存占用显存 4–6GB内存 8–12GB
适合场景批量生成、反复调试学习流程、偶尔出片

两组可直接复制的命令

GPU 机器,追求质量:

python inference.py \ --driven_audio examples/driven_audio/bus_chinese.wav \ --source_image examples/source_image/full_body_1.png \ --size 512 --batch_size 4

CPU 或 6GB 小显存机器,求稳:

python inference.py \ --driven_audio examples/driven_audio/bus_chinese.wav \ --source_image examples/source_image/full_body_1.png \ --cpu --size 256 --batch_size 1

两个关键参数:--size控制渲染分辨率(256 或 512),--batch_size控制渲染阶段一次处理多少帧,是显存占用的主要来源。如果你的机器显存在 6–8GB 之间,可以从--size 512 --batch_size 2起步,再视情况往上加。

出错了先查这里:四个高频报错速查 🛠️

现象:ffmpeg is not recognized/ffmpeg: command not found

原因:ffmpeg 没装,或装了但不在系统 PATH 里。

解决:

conda install ffmpeg

Windows 用户也可以用scoop install ffmpeg,装完重开终端。

现象:RuntimeError: CUDA out of memory(SadTalker 显存不足)

原因:512 分辨率加大 batch 时渲染阶段显存不够。

解决:

# Linux export PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128 # Windows 则用 set PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128 python inference.py ... --size 256 --batch_size 1

环境变量能减少显存碎片,降分辨率和 batch 才是根本手段。

现象:ModuleNotFoundError: No module named 'ai'或加载模型时报unexpected EOF

原因:模型文件没下全或下载中断导致损坏。

解决:

bash scripts/download_models.sh

脚本带断点续传标记,重跑只补缺失文件即可。

现象:Mac M1/M2 上报Illegal Hardware Error

原因:dlib 的编译版本与 Apple 芯片不兼容。

解决:

pip install dlib

单独重装 dlib 后重试。更多报错可在 docs/FAQ.md 里对照查。

让效果更好的细节 🎯

  • 音频格式:wav 效果最好,采样率 16kHz 或 44.1kHz 均可;程序只接受 wav 和 mp3,其他格式请先转码(用ffmpeg -i in.flac out.wav一条命令搞定)。
  • 图像挑选:正面、光线均匀、面部清晰的照片最佳;重度美颜滤镜图容易让表情失真。模型在真人或接近真人风格的画面上才有效,纯动漫头像别抱太高期望。
  • 分辨率策略:首次运行固定用 256,确认整条链路正常后再上 512;512 对显存和时间都是成倍消耗。
  • 全身/半身图:加--preprocess full --still,模型自动裁人脸区域做动画再贴回原图,头部姿态保持不动,适合整身照;--still单独用则只抑制头部运动。
  • 表情幅度:--expression_scale 1.0是默认值,调大(如 1.5)口型和表情更夸张,调小更收敛。
  • 画质增强:--enhancer gfpgan对生成人脸做超分修复,512 分辨率下提升明显;参考视频可用--ref_eyeblink借眨眼、--ref_pose借头部姿态,细节见 docs/best_practice.md。


装到这一步,你可以直接拿自己的照片和录音开始做数字人口播、课件讲解视频或虚拟角色配音,把生成的 mp4 交给剪辑工具二次处理即可。下一步建议:跑一遍python gradio_demo.py打开浏览器版操作界面,免去记命令行参数;需要接入 stable-diffusion-webui 的话,读 docs/webui_extension.md 按步骤装扩展即可。

【免费下载链接】SadTalker[CVPR 2023] SadTalker:Learning Realistic 3D Motion Coefficients for Stylized Audio-Driven Single Image Talking Face Animation项目地址: https://gitcode.com/GitHub_Trending/sa/SadTalker

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

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

大模型学习避坑指南:程序员高效实战路径

1. 大模型入门避坑指南:程序员如何高效学习与实战 作为一名在大模型领域摸爬滚打多年的开发者,我见过太多程序员在学习大模型时踩坑。今天我就来分享一份实战避坑指南,帮助大家少走弯路。 大模型学习不是简单的API调用练习,而是技…

作者头像 李华
网站建设 2026/9/12 14:52:19

提示词工程五大原则:有效减少大模型幻觉现象

1. 提示词工程与大模型幻觉问题解析大模型在生成内容时经常会出现"幻觉"现象——即模型自信地输出看似合理但实际上完全错误的信息。这种现象在医疗、法律等专业领域尤为危险,可能导致严重后果。作为从业者,我发现通过优化提示词(prompt)能有效…

作者头像 李华
网站建设 2026/9/12 14:51:21

组合优化与凸优化实验:从建模到可复现的求解全流程

简介:哈工大组合优化与凸优化研究生课程实验资料包,面向计算机、数学等方向的研究生与进阶学习者,旨在通过动手实验理解优化理论中的核心算法,并顺利完成课程任务。包内共262个文件,整体约47.1MB,以Python脚…

作者头像 李华
网站建设 2026/9/12 14:50:36

Elasticsearch 8.13.2单机部署与性能调优指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/12 14:50:06

工业物联网网关与子设备通信盲区排查与规避指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/12 14:49:23

图灵课堂IT培训课程体系与就业指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华