ffmpeg 视频支持:Windows Mac Linux 各平台安装命令
ffmpeg 为什么需要
CodeFormer 的视频处理流程:
- ffmpeg 把视频逐帧提取成图片序列
- CodeFormer 对每张图片做人脸修复
- ffmpeg 把修复后的图片序列合成回视频(保留原音频)
没有 ffmpeg,第三步就跑不通。脚本会在处理视频的开头就报 ffmpeg not found。
Conda 安装(最推荐)
conda activate codeformer
conda install -c conda-forge ffmpeg
Cond-forge 提供跨平台的 ffmpeg 包,安装后自动在环境 PATH 里,不需要手动配置。
Windows 安装
方法一:Scoop(Windows 包管理器)
scoop install ffmpeg
方法二:手动下载
- 去 [gyan.dev 的 ffmpeg Windows build](<URL> 下载 essentials zip
- 解压到
D:\ffmpeg(路径不要有空格和中文) - 把
D:\ffmpeg\bin加到系统 PATH:
- 此电脑 → 属性 → 高级系统设置 → 环境变量 → Path → 新建 → 粘贴路径
- 重开终端,验证:
ffmpeg -version
# 应输出 ffmpeg 版本信息
方法三:Chocolatey
choco install ffmpeg
Mac 安装
# Homebrew
brew install ffmpeg
# MacPorts
sudo port install ffmpeg
Linux 安装
# Ubuntu / Debian
sudo apt-get update
sudo apt-get install ffmpeg
# CentOS / RHEL
sudo yum install ffmpeg
# 或
sudo dnf install ffmpeg
# Arch Linux
sudo pacman -S ffmpeg
Colab / AutoDL / 矩池云 等云平台:apt-get install ffmpeg 即可。
验证
ffmpeg -version
ffprobe -version
两个命令都要有输出。ffprobe 是 ffmpeg 附带的,CodeFormer 也会用它来探测视频元信息。
常见问题
ffmpeg not found 但命令行能跑
这种情况几乎一定是 PATH 问题:
- CodeFormer 脚本在子进程里调 ffmpeg,子进程的 PATH 可能不包含你装 ffmpeg 的目录
- 确认
where ffmpeg(Windows)或which ffmpeg(Linux/Mac)能找到路径 - 如果用 conda 装的,确保
conda activate codeformer后再跑推理脚本
ffmpeg 太旧
CodeFormer 没硬性要求 ffmpeg 版本,但过旧的 ffmpeg 可能不支持某些编码格式。建议 ≥ 4.x。
视频编解码问题
如果合成时卡在某些编码(如 HEVC/H.265),可以在推理脚本运行前手动检查一下:
ffmpeg -encoders | grep -i h264
# 确认 h264 编码器可用
Windows 自带的 ffmpeg build 通常编译了所有编码器,Linux apt 装的可能需要额外安装 libx264-dev。