ffmpeg-Image-format
FFmpeg 图片格式转换
补充说明
本文提供全平台 FFmpeg 图片批量转 WebP 脚本,适配 Windows CMD / PowerShell / Linux / MacOS。支持主流图片格式批量转换、WebP 无损压缩、极限压缩处理。所有脚本可自动创建 Completed 文件夹存放成品,绝对不会覆盖、修改原始图片。
通用参数说明
-y:自动覆盖 Completed 内的同名成品文件(不影响原图)-q:v:WebP 压缩质量(0=体积最小画质最差,100=画质最好体积最大)-compression_level 6:WebP 最高压缩级别,压缩效率最优
一、Windows CMD — 图片转 WebP 批量压缩
自动创建 Completed 文件夹,支持 dng/png/jpg/jpeg 格式批量转 WebP,原图安全保留。
1. 无损压缩转换(画质几乎无损失)
md Completed 2>nul && for %i in (*.dng *.DNG *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG) do ffmpeg -i "%i" -y "Completed\%~ni.webp"
2. 极限压缩转换(极小体积、保留基础画质)
md Completed 2>nul && for %i in (*.dng *.DNG *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG) do ffmpeg -i "%i" -y -q:v 30 -compression_level 6 "Completed\%~ni.webp"
3. 极限压缩 + 固定 1920x1080 分辨率(居中补边)
md Completed 2>nul && 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 "Completed\%~ni.webp"
二、Windows PowerShell — 图片转 WebP 批量压缩
自动创建归档文件夹,全量批量转换、压缩,功能与 CMD 完全一致。
1. 无损压缩转换
if (!(Test-Path "Completed")) { New-Item -ItemType Directory -Path "Completed" | Out-Null }
Get-ChildItem *.DNG, *.dng, *.png, *.PNG, *.jpg, *.JPG, *.jpeg, *.JPEG | % { ffmpeg -i $_.FullName -y "Completed\$($_.BaseName).webp" }
2. 极限压缩转换
if (!(Test-Path "Completed")) { New-Item -ItemType Directory -Path "Completed" | Out-Null }
Get-ChildItem *.DNG, *.dng, *.png, *.PNG, *.jpg, *.JPG, *.jpeg, *.JPEG | % { ffmpeg -i $_.FullName -y -q:v 30 -compression_level 6 -preset picture "Completed\$($_.BaseName).webp" }
3. 极限压缩 + 固定 1920x1080 分辨率
if (!(Test-Path "Completed")) { New-Item -ItemType Directory -Path "Completed" | Out-Null }
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 "Completed\$($_.BaseName).webp" }
三、Linux / MacOS — 图片转 WebP 批量压缩
通用 Bash 脚本,自动创建归档目录,跨系统通用,功能与 Windows 端完全对齐。
1. 无损压缩转换
mkdir -p Completed && for file in *.{dng,DNG,png,PNG,jpg,JPG,jpeg,JPEG}; do ffmpeg -i "$file" -y "Completed/${file%.*}.webp"; done
2. 极限压缩转换
mkdir -p Completed && for file in *.{dng,DNG,png,PNG,jpg,JPG,jpeg,JPEG}; do ffmpeg -i "$file" -y -q:v 30 -compression_level 6 "Completed/${file%.*}.webp"; done
3. 极限压缩 + 固定 1920x1080 分辨率
mkdir -p Completed && for file in *.{dng,DNG,png,PNG,jpg,JPG,jpeg,JPEG}; do ffmpeg -i "$file" -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 "Completed/${file%.*}.webp"; done
四、WebP 质量参数对照表(-q:v)
参数说明:取值范围 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 |
极限压榨 | 严重失真、马赛克明显 | 占位图、极低清索引图(不推荐常规使用) |
五、全局功能说明
- 自动创建目录:所有平台脚本自动生成 Completed 文件夹,无需手动新建,重复执行不会报错
- 原图绝对保护:所有操作仅读取原图,成品统一输出至子文件夹,永不覆盖、损坏源文件
- 同名文件兼容:默认开启
-y参数,自动覆盖成品目录同名文件,删除该参数可开启覆盖确认提示 - 全格式兼容:支持 DNG/PNG/JPG/JPEG 主流图片格式,统一批量转换为 WebP