随机
Enter 搜索 ↑↓ 切换 Esc 清空

ffmpeg-Image-format-fit

命令

FFmpeg 图片格式转换 + 修改分辨率(居中补边_有黑边)

ffmpeg-Image-format-fit

FFmpeg 图片格式转换 + 修改分辨率(居中补边_有黑边)

补充说明

本文提供全平台 FFmpeg 图片批量转 WebP 脚本,适配 Windows CMD / PowerShell / Linux / MacOS。支持主流图片格式批量转换、WebP 无损压缩、极限压缩处理。所有脚本可自动创建 Completed 文件夹存放成品,绝对不会覆盖、修改原始图片

通用参数说明

  • -y:自动覆盖 Completed 内的同名成品文件(不影响原图)
  • -q:v:WebP 压缩质量(0=体积最小画质最差,100=画质最好体积最大)
  • -compression_level 6:WebP 最高压缩级别,压缩效率最优

下载批处理到 下载目录

md "%USERPROFILE%\Downloads\convert_to_webp_fit" 2>nul && cd /d "%USERPROFILE%\Downloads\convert_to_webp_fit" & (for %r in (320x180 640x360 960x540 1280x720 1920x1080 3840x2160 5120x2304) do curl.exe -L -fs -o convert_to_webp_fit_%r.bat "https://gitee.com/meimolihan/cmdbox/raw/master/bat/ffmpeg/convert_to_webp_fit/convert_to_webp_fit_%r.bat") & explorer .
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\Downloads\convert_to_webp_fit" | Out-Null; cd "$env:USERPROFILE\Downloads\convert_to_webp_fit"; $B="https://gitee.com/meimolihan/cmdbox/raw/master/bat/ffmpeg/convert_to_webp_fit"; "320x180","640x360","960x540","1280x720","1920x1080","3840x2160","5120x2304" | % { curl.exe -L -o "convert_to_webp_fit_$_.bat" "$B/convert_to_webp_fit_$_.bat" }; explorer .

一、Windows CMD — 图片转 WebP 批量压缩

自动创建 Completed 文件夹,支持 dng/png/jpg/jpeg 格式批量转 WebP,原图安全保留。

1. 极限压缩 + 固定 640x360 分辨率(居中补边_有黑边)

md Completed_640x360 2>nul && for %i in (*.WEBP, *.webp, *.dng *.DNG *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG) do ffmpeg -i "%i" -y -vf "scale=640:360:force_original_aspect_ratio=decrease,pad=640:360:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_640x360\%~ni.webp"

2. 极限压缩 + 固定 960x540 分辨率(居中补边_有黑边)

md Completed_960x540 2>nul && for %i in (*.WEBP, *.webp, *.dng *.DNG *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG) do ffmpeg -i "%i" -y -vf "scale=960:540:force_original_aspect_ratio=decrease,pad=960:540:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_960x540\%~ni.webp"

3. 极限压缩 + 固定 1280x720 分辨率(居中补边_有黑边)

md Completed_1280x720 2>nul && for %i in (*.WEBP, *.webp, *.dng *.DNG *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG) do ffmpeg -i "%i" -y -vf "scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_1280x720\%~ni.webp"

4. 极限压缩 + 固定 1920x1080 分辨率(居中补边_有黑边)

md Completed_1920x1080 2>nul && for %i in (*.WEBP, *.webp, *.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 60 -compression_level 6 "Completed_1920x1080\%~ni.webp"

5. 极限压缩 + 固定 3840x2160 分辨率(居中补边_有黑边)

md Completed_3840x2160 2>nul && for %i in (*.WEBP, *.webp, *.dng *.DNG *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG) do ffmpeg -i "%i" -y -vf "scale=3840:2160:force_original_aspect_ratio=decrease,pad=3840:2160:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_3840x2160\%~ni.webp"

6. 极限压缩 + 固定 5120x2304 分辨率(居中补边_有黑边)

md Completed_5120x2304 2>nul && for %i in (*.WEBP, *.webp, *.dng *.DNG *.png *.PNG *.jpg *.JPG *.jpeg *.JPEG) do ffmpeg -i "%i" -y -vf "scale=5120:2304:force_original_aspect_ratio=decrease,pad=5120:2304:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_5120x2304\%~ni.webp"

二、Windows PowerShell — 图片转 WebP 批量压缩

自动创建归档文件夹,全量批量转换、压缩,功能与 CMD 完全一致。

1. 极限压缩 + 固定 640x360 分辨率(居中补边_有黑边)

if (!(Test-Path "Completed_640x360")) { New-Item -ItemType Directory -Path "Completed_640x360" | Out-Null }
Get-ChildItem *.WEBP, *.webp, *.DNG, *.dng, *.png, *.PNG, *.jpg, *.JPG, *.jpeg, *.JPEG | % { ffmpeg -i $_.FullName -y -vf "scale=640:360:force_original_aspect_ratio=1,pad=640:360:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_640x360\$($_.BaseName).webp" }

2. 极限压缩 + 固定 960x540 分辨率(居中补边_有黑边)

if (!(Test-Path "Completed_960x540")) { New-Item -ItemType Directory -Path "Completed_960x540" | Out-Null }
Get-ChildItem *.WEBP, *.webp, *.DNG, *.dng, *.png, *.PNG, *.jpg, *.JPG, *.jpeg, *.JPEG | % { ffmpeg -i $_.FullName -y -vf "scale=960:540:force_original_aspect_ratio=1,pad=960:540:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_960x540\$($_.BaseName).webp" }

3. 极限压缩 + 固定 1280x720 分辨率(居中补边_有黑边)

if (!(Test-Path "Completed_1280x720")) { New-Item -ItemType Directory -Path "Completed_1280x720" | Out-Null }
Get-ChildItem *.WEBP, *.webp, *.DNG, *.dng, *.png, *.PNG, *.jpg, *.JPG, *.jpeg, *.JPEG | % { ffmpeg -i $_.FullName -y -vf "scale=1280:720:force_original_aspect_ratio=1,pad=1280:720:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_1280x720\$($_.BaseName).webp" }

4. 极限压缩 + 固定 1920x1080 分辨率(居中补边_有黑边)

if (!(Test-Path "Completed_1920x1080")) { New-Item -ItemType Directory -Path "Completed_1920x1080" | Out-Null }
Get-ChildItem *.WEBP, *.webp, *.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 60 -compression_level 6 "Completed_1920x1080\$($_.BaseName).webp" }

5. 极限压缩 + 固定 3840x2160 分辨率(居中补边_有黑边)

if (!(Test-Path "Completed_3840x2160")) { New-Item -ItemType Directory -Path "Completed_3840x2160" | Out-Null }
Get-ChildItem *.WEBP, *.webp, *.DNG, *.dng, *.png, *.PNG, *.jpg, *.JPG, *.jpeg, *.JPEG | % { ffmpeg -i $_.FullName -y -vf "scale=3840:2160:force_original_aspect_ratio=1,pad=3840:2160:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_3840x2160\$($_.BaseName).webp" }

6. 极限压缩 + 固定 5120x2304 分辨率(居中补边_有黑边)

if (!(Test-Path "Completed_5120x2304")) { New-Item -ItemType Directory -Path "Completed_5120x2304" | Out-Null }
Get-ChildItem *.WEBP, *.webp, *.DNG, *.dng, *.png, *.PNG, *.jpg, *.JPG, *.jpeg, *.JPEG | % { ffmpeg -i $_.FullName -y -vf "scale=5120:2304:force_original_aspect_ratio=1,pad=5120:2304:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_5120x2304\$($_.BaseName).webp" }

三、Linux / MacOS — 图片转 WebP 批量压缩

通用 Bash 脚本,自动创建归档目录,跨系统通用,功能与 Windows 端完全对齐。

1. 极限压缩 + 固定 640x360 分辨率(居中补边_有黑边)

mkdir -p Completed_640x360 && for file in *.{WEBP,webp,dng,DNG,png,PNG,jpg,JPG,jpeg,JPEG}; do ffmpeg -i "$file" -y -vf "scale=640:360:force_original_aspect_ratio=decrease,pad=640:360:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_640x360/${file%.*}.webp"; done

2. 极限压缩 + 固定 960x540 分辨率(居中补边_有黑边)

mkdir -p Completed_960x540 && for file in *.{WEBP,webp,dng,DNG,png,PNG,jpg,JPG,jpeg,JPEG}; do ffmpeg -i "$file" -y -vf "scale=960:540:force_original_aspect_ratio=decrease,pad=960:540:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_960x540/${file%.*}.webp"; done

3. 极限压缩 + 固定 1280x720 分辨率(居中补边_有黑边)

mkdir -p Completed_1280x720 && for file in *.{WEBP,webp,dng,DNG,png,PNG,jpg,JPG,jpeg,JPEG}; do ffmpeg -i "$file" -y -vf "scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_1280x720/${file%.*}.webp"; done

4. 极限压缩 + 固定 1920x1080 分辨率(居中补边_有黑边)

mkdir -p Completed_1920x1080 && for file in *.{WEBP,webp,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 60 -compression_level 6 "Completed_1920x1080/${file%.*}.webp"; done

5. 极限压缩 + 固定 3840x2160 分辨率(居中补边_有黑边)

mkdir -p Completed_3840x2160 && for file in *.{WEBP,webp,dng,DNG,png,PNG,jpg,JPG,jpeg,JPEG}; do ffmpeg -i "$file" -y -vf "scale=3840:2160:force_original_aspect_ratio=decrease,pad=3840:2160:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_3840x2160/${file%.*}.webp"; done

6. 极限压缩 + 固定 5120x2304 分辨率(居中补边_有黑边)

mkdir -p Completed_5120x2304 && for file in *.{WEBP,webp,dng,DNG,png,PNG,jpg,JPG,jpeg,JPEG}; do ffmpeg -i "$file" -y -vf "scale=5120:2304:force_original_aspect_ratio=decrease,pad=5120:2304:(ow-iw)/2:(oh-ih)/2" -q:v 60 -compression_level 6 "Completed_5120x2304/${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 极限压榨 严重失真、马赛克明显 占位图、极低清索引图(不推荐常规使用)

六、全局功能说明