ffmpeg
压缩单张图片
ffmpeg -i 待压缩的图片路径 -q:v 2 压缩后的图片路径
• input.jpg: 输入图片文件。
• -q:v 2: 设置图片质量,值越小质量越高(默认值为 2)。
• output.jpg: 输出图片文件。
批量压缩图片
在 Windows 中,可以使用 for 循环来批量压缩图片:
for %i in (*.jpg) do ffmpeg -i "%i" -q:v 2 "压缩后的图片路径_%i"
• *.jpg: 匹配当前目录下所有 .jpg 文件。
• compressed_%i: 将压缩后的图片保存为 compressed_ 开头的文件。
注意:如果在批处理脚本(.bat 文件)中使用 for 循环,需要将 %i 改为 %%i:
for %%i in (*.jpg) do ffmpeg -i "%%i" -q:v 2 "压缩后的图片路径%%i"
调整分辨率并压缩
ffmpeg -i 待压缩的图片路径 -vf "scale=800:600" -q:v 2 压缩后的图片路径
• -vf "scale=800:600": 将图片缩放到 800x600 的分辨率。
压缩 PNG 图片
ffmpeg -i 待压缩的图片路径 -compression_level 5 压缩后的图片路径
• -compression_level 5: 设置 PNG 图片的压缩级别(0 为无压缩,9 为最大压缩)。
批量压缩 PNG 图片
for %i in (*.png) do ffmpeg -i "%i" -compression_level 5 "压缩后的图片路径_%i"
用 WebP 格式压缩
ffmpeg -i 待压缩的图片路径 -q:v 80 压缩后的图片路径.webp
• -q:v 80: 设置 WebP 图片的质量(0 为最差,100 为最好)。
量压缩为 WebP 格式
for %i in (*.jpg) do ffmpeg -i "%i" -q:v 80 "%~ni.webp"
• %~ni.webp: 将输出文件保存为与输入文件同名,但扩展名为 .webp。
保持原始宽高比
ffmpeg -i 待压缩的图片路径 -vf "scale=800:-1" -q:v 2 压缩后的图片路径
• scale=800:-1: 将宽度调整为 800 像素,高度自动调整以保持宽高比。
压缩 GIF 图片
ffmpeg -i 待压缩的图片路径 -vf "scale=400:-1" -f gif 压缩后的图片路径.gif
• -vf "scale=400:-1": 将 GIF 图片的宽度调整为 400 像素,高度自动调整。
批量压缩 GIF 图片
for %i in (*.gif) do ffmpeg -i "%i" -vf "scale=400:-1" -f gif "压缩后的图片路径_%i"
指定输出目录
如果希望将压缩后的图片保存到指定目录,可以使用以下指令:
for %i in (*.jpg) do ffmpeg -i "%i" -q:v 2 "d:\e\压缩后的图片路径_%i"
• d:\e\压缩后的图片路径_%i: 将压缩后的图片保存到 d:\e\压缩后的图片路径 目录。
使用批处理脚本
将以下内容保存为 .bat 文件,双击运行即可批量压缩图片:
@echo off
for %%i in (*.jpg) do (
ffmpeg -i "%%i" -q:v 2 "压缩后的图片路径_%%i"
)
echo 图片压缩完成!
pause
图片格式转换
ffmpeg -i 待压缩的图片路径.jpg 压缩后的图片路径.png