SadTalker 安装教程3 条命令跑通第一段口型视频【免费下载链接】SadTalker[CVPR 2023] SadTalkerLearning Realistic 3D Motion Coefficients for Stylized Audio-Driven Single Image Talking Face Animation项目地址: https://gitcode.com/GitHub_Trending/sa/SadTalkerSadTalker 能把一张静态人像和一段音频合成为会说话的人像视频口型、点头、表情都跟着语音走。这篇教程带你完成 SadTalker 安装与 SadTalker 配置——先三步跑通第一次推理拿到正反馈再按平台排坑、按硬件做选型最后用一份自检清单确认部署成功。一、三步跑通先拿一个能播放的结果1. 克隆代码打开终端克隆仓库并进入目录git clone https://gitcode.com/GitHub_Trending/sa/SadTalker.git cd SadTalker2. 建环境、装依赖用 conda 建一个独立环境别往现有环境里塞conda create -n sadtalker python3.8 -y conda activate sadtalker pip install torch torchvision torchaudio conda install ffmpeg pip install -r requirements.txt依赖其实就三块装的时候心里有数依赖装它的理由torch / torchvision / torchaudio推理引擎N 卡机器直接装默认包即可ffmpeg解码音频、拼接结果视频缺它必报错requirements.txt一条命令装下 numpy、librosa、face_alignment、kornia、gfpgan、gradio 等dlib仅 macOS 需要用于人脸关键点检测3. 下载模型bash scripts/download_models.sh脚本 scripts/download_models.sh 会把文件放进两个位置checkpoints/256 与 512 两档人脸渲染模型.safetensors外加两个 mapping 网络gfpgan/weights/GFPGAN 人脸增强用的 4 个权重文件模型总量约 3GB。网络中断也没关系直接重跑脚本已下载的文件会被跳过。4. 跑第一次推理python inference.py不传任何参数时inference.py 会用仓库自带的示例音频examples/driven_audio/bus_chinese.wav人像examples/source_image/full_body_1.png也就是下面这张图跑完后终端会打印一行The generated video is named: ./results/xxxx.mp4视频就在results/目录。看到嘴型跟着语音动SadTalker 安装就算成了。二、分平台差异各平台特有的坑⚠️ Windowsffmpeg 不在 PATH 里Windows 上最常见的翻车是ffmpeg is not recognized as an internal or external command——ffmpeg 装了但没进系统 PATH。原生 Windows用 scoop 或官方二进制安装 ffmpeg把它的bin目录加进%PATH%用 WSL 的话先执行export LD_LIBRARY_PATH/usr/lib/wsl/lib:$LD_LIBRARY_PATH再走第一节的流程改完 PATH 要重开终端。验证方法ffmpeg -version能打印出版本号就通过了。Linux基本无坑Linux 上照抄第一节命令即可两点注意conda install ffmpeg最省事走系统源装的也行前提是新终端里ffmpeg命令能直接执行Python 建议用 3.8高小版本一般也能跑但 3.8 的依赖冲突最少macOSM 芯片上 dlib 的坑官方在 M1macOS 13.3上有成功记录流程与 Linux 相同只需补一步。如果启动后立刻崩溃、报Illegal Hardware Instruction通常是 dlib 与当前芯片架构不匹配。重新装一次即可pip install dlib装完用python -c import dlib验证不报错再跑推理。三、选型指南你应该怎么选跑通之后剩下三个问题256 还是 512、GPU 还是 CPU、显存不够怎么办。256 vs 512--size决定加载哪个模型init_path.py 按 size 去checkpoints/里找SadTalker_V0.0.2_size.safetensors并加载。第一次跑、只想验证环境--size 256默认值快、省显存效果满意后要出正式片--size 512细节明显更细成片要放大观看512 之外再挂--enhancer gfpgan做一次人脸增强依赖第三步下载的 gfpgan 权重GPU vs CPU设备是自动选的有 CUDA 且你没传--cpu就走 GPU否则回落到 CPU。纯 CPU 跑 10 秒音频要等几分钟把 CPU 当能跑方案别当好用方案。你应该怎么选你的情况建议参数首次运行任何硬件256 GPUpython inference.py显存 6GB 左右要出精修片512 降 batch--size 512 --batch_size 1完全没 N 卡256 CPU音频剪短点--cpu --size 256全身图、要做头身联动still 模式--preprocess full --still显存不足时怎么调参数SadTalker 显存不足的报错长这样RuntimeError: CUDA out of memory。按顺序做三件事--batch_size 1默认是 2--size 256还爆就限制 PyTorch 的显存切分粒度再跑export PYTORCH_CUDA_ALLOC_CONFmax_split_size_mb:128 python inference.py --size 256 --batch_size 1Windows 下把export换成set。四、自检清单验证 SadTalker 配置已生效复制这段逐条执行python -c import torch; print(torch, torch.__version__, | cuda, torch.cuda.is_available()) ffmpeg -version ls checkpoints gfpgan/weights预期输出第一行torch 2.x | cuda True纯 CPU 机器显示False属正常第二行ffmpeg 的版本横幅提示找不到命令就回第二节对应平台处理第三行checkpoints/4 个文件2 个 .safetensors 2 个 mappinggfpgan/weights/4 个 .pth最后跑一遍python inference.py看到The generated video is named:并把results/里的视频点开——脸会随音频说话SadTalker 配置就全部生效了。五、高频排错现象 → 原因 → 动作1. SadTalker CUDA 报错CUDA out of memory现象渲染阶段中途崩溃原因512 分辨率或 batch 偏大显存不够动作降到 256、--batch_size 1仍爆则按第三节导PYTORCH_CUDA_ALLOC_CONF2.ffmpeg is not recognized/No such file or directory: ffmpeg现象视频拼接阶段崩溃原因ffmpeg 未安装或不在 PATH动作装 ffmpeg 并进 PATH用ffmpeg -version验证3.FileNotFoundError: .../similarity_Lm3D_all.mat现象3DMM 特征提取阶段崩溃原因模型没下全或目录结构不对动作重跑bash scripts/download_models.sh核对checkpoints/内容4.ModuleNotFoundError: No module named ai现象启动即崩报错看着很怪原因模型文件损坏或下载不完整常见于 checkpoint 大小不对动作删掉对应模型文件重新执行下载脚本并核对大小5. Mac M1/M2Illegal Hardware Instruction现象进程秒崩原因dlib 与当前芯片架构不兼容动作pip install dlib重装一次6. 音频解码错误Invalid data found when processing input现象加载音频阶段崩溃原因音频格式不支持动作输入只支持 wav / mp3其他格式先用 ffmpeg 转成 wav 再喂进去六、下一步到这里SadTalker 安装与配置就算完成环境、依赖、模型、推理全链路都通了。把--driven_audio和--source_image换成你自己的音频和照片就能生成第一段口型视频想控制表情强度或用参考视频驱动眨眼神态参考 docs/best_practice.md更多输入素材在 examples/ 目录里。【免费下载链接】SadTalker[CVPR 2023] SadTalkerLearning Realistic 3D Motion Coefficients for Stylized Audio-Driven Single Image Talking Face Animation项目地址: https://gitcode.com/GitHub_Trending/sa/SadTalker创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考