install_ffmpeg
FFmpeg 跨平台安装指南(Debian / Windows 11)
补充说明
FFmpeg 是一款强大的音视频处理工具,支持转码、剪辑、提取音轨、格式转换等功能,下面分别介绍 Debian 系统 和 Windows 11 系统 的完整安装、验证及常用操作方法。
一、Debian 系统安装 FFmpeg
Debian 官方软件源已收录 FFmpeg,可直接通过 apt 包管理器一键安装,操作简单且稳定。
1. 一键安装命令
更新软件源并自动安装 FFmpeg,安装完成后自动输出版本信息:
sudo apt update && \
sudo apt install ffmpeg -y && \
ffmpeg -version | grep "ffmpeg version"
2. 分步说明
sudo apt update:同步最新软件包索引,避免依赖缺失;sudo apt install ffmpeg -y:静默安装 FFmpeg(-y自动确认安装);ffmpeg -version | grep "ffmpeg version":过滤并查看 FFmpeg 版本,验证安装结果。
3. 验证安装
安装完成后,任意终端执行以下命令,输出版本号即代表安装成功:
ffmpeg -version
4. 常用基础命令(通用)
# 视频无损格式转换(不重新编码,速度最快)
ffmpeg -i 原视频.mp4 -c copy 输出视频.mkv
# 从视频中提取音频并保存为 MP3
ffmpeg -i 视频.mp4 -vn -acodec libmp3lame 音频.mp3
# 截取视频片段(从 00:01:00 开始,截取 10 秒)
ffmpeg -ss 00:01:00 -t 10 -i 原视频.mp4 -c copy 截取片段.mp4
二、Windows 11 系统安装 FFmpeg
Windows 11 推荐使用系统自带的 winget 包管理器安装,自动配置系统环境变量,无需手动配置路径,原生支持 PowerShell。
1. 正式安装(PowerShell 执行)
以普通身份打开 PowerShell,执行以下命令,自动下载、解压并配置环境变量:
winget install -e --id Gyan.FFmpeg
- 参数说明:
-e为精确匹配软件 ID,避免安装到其他同名版本; - 安装过程会自动添加
ffmpeg、ffprobe、ffplay全局命令别名。
2. 关键注意事项
安装完成后终端会提示 Path environment variable modified,原有终端不会加载新环境变量,必须重新打开终端才能识别 ffmpeg 命令。
3. 自动新开终端并验证版本
如需一键唤起新 PowerShell 窗口、自动执行版本检测、窗口保持不关闭,执行以下命令:
Start-Process powershell -ArgumentList '-NoExit', '-Command', 'ffmpeg -version'
Start-Process:启动新程序;-NoExit:执行完命令后保留终端窗口,不会自动关闭。
4. 手动验证(常规方式)
关闭当前所有 PowerShell / CMD,重新打开新终端,执行验证命令:
ffmpeg -version
正常输出版本信息、编译参数即代表安装成功。
5. 备选安装源(可选)
若 Gyan 版本下载异常,可选择 BtbN 编译版(更新迭代更快):
winget install -e --id BtbN.FFmpeg.GPL.Shared
6. Windows 常用基础命令
与 Linux 用法完全一致,直接在 PowerShell / CMD 中运行:
# 视频无损转码
ffmpeg -i 原视频.mp4 -c copy 输出视频.mkv
# 视频压缩(限制视频码率,缩小文件体积)
ffmpeg -i 原视频.mp4 -b:v 1000k 压缩视频.mp4
# 提取视频画面为图片序列
ffmpeg -i 视频.mp4 -r 1 帧图_%04d.jpg
7. Windows 图片格式转换
- CMD 中执行
# 格式转换-无损压缩
for %i in (*.dng *.DNG *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG) do ffmpeg -i "%i" -y "%~ni.webp"
# 格式转换-极限压缩
for %i in (*.dng *.DNG *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG) do ffmpeg -i "%i" -y -q:v 30 -compression_level 6 "%~ni.webp"
# 格式转换-极限压缩+修改分辨率
for %i in (*.dng *.DNG *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG) do ffmpeg -i "%i" -y -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2" -q:v 30 -compression_level 6 "%~ni.webp"
- PowerShell 中执行
# 格式转换-无损压缩
Get-ChildItem *.DNG, *.dng *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG | % { ffmpeg -i $_.FullName -y "$($_.BaseName).webp" }
# 格式转换-极限压缩
Get-ChildItem *.DNG, *.dng, *.png, *.PNG, *.jpg, *.JPG, *.jpeg, *.JPEG | % { ffmpeg -i $_.FullName -y -q:v 30 -compression_level 6 -preset picture "$($_.BaseName).webp" }
# 格式转换-极限压缩+修改分辨率
Get-ChildItem *.DNG, *.dng, *.png, *.PNG, *.jpg, *.JPG, *.jpeg, *.JPEG | % { ffmpeg -i $_.FullName -y -vf "scale=1920:1080:force_original_aspect_ratio=1,pad=1920:1080:(ow-iw)/2:(oh-ih)/2" -q:v 30 -compression_level 6 "$($_.BaseName).webp" }
- WebP
-q:v质量参数对照表(FFmpeg)
说明:取值范围 0 ~ 100,数值越小 → 压缩越强、体积越小、画质越低;搭配
-compression_level 6(WebP 最高压缩级别)使用效果最佳。
| 质量值 | 压缩效果 | 画质表现 | 适用场景 |
|---|---|---|---|
| -q:v 90 | 轻微压缩 | 几乎无损,肉眼无差异 | 原图存档、高清展示、摄影作品 |
| -q:v 80 | 轻度压缩 | 画质优秀,细节完整 | 日常图片分享、博客、普通图文展示 |
| -q:v 70 | 常规压缩 | 画质良好,轻微细节损耗 | 朋友圈、普通配图、本地常规存储 |
| -q:v 60 | 中度压缩 | 画质尚可,远处观看无影响 | 网页正文图片、素材图库 |
| -q:v 50 | 较强压缩 | 细节开始弱化,近看有感知 | 批量图片归档、本地备份 |
| -q:v 40 | 文件极小 | 画质明显下降,色彩偏淡 | 网页缩略图、列表预览图 |
| -q:v 35 | 体积非常小 | 细节丢失较多 | 海量图片批量存档、离线图库 |
| -q:v 30 | 极致压缩 | 轮廓保留,细节模糊 | 仅临时预览、低清快速查看 |
| -q:v 25 | 极限压缩 | 画质损失明显,色块感强 | 临时缓存文件、仅做标识用途 |
| -q:v 10 | 极限压榨 | 严重失真,马赛克明显 | 仅占位图、极低清索引图(不推荐常规使用) |
三、常见问题排查
1. Windows 端:提示 "无法识别 ffmpeg"
- 原因:终端未重启,环境变量未刷新;
- 解决:关闭所有终端,重新打开后再执行命令。
2. Debian 端:提示找不到 ffmpeg
- 原因:软件源未更新或网络异常;
- 解决:重新执行
sudo apt update后再次安装。
3. winget 命令不可用
- Windows 10:前往微软应用商店安装「应用安装器」;
- Windows 11:系统自带,若缺失可更新系统补丁。