这里有2种方法来减小GIF文件大小:

方法1:简单的一行命令

ffmpeg -i my_video.mp4 -vf "fps=10,scale=480:-1" my_video.gif

方法2:高质量压缩(推荐)

# 第一步:生成调色板
ffmpeg -i my_video.mp4 -vf "fps=10,scale=480:-1:flags=lanczos,palettegen" palette.png

# 第二步:使用调色板生成GIF
ffmpeg -i my_video.mp4 -i palette.png -filter_complex "fps=10,scale=480:-1:flags=lanczos[x];[x][1:v]paletteuse" my_video.gif

# 清理临时文件
rm palette.png

参数说明:

  • fps=10 - 设置帧率为10fps
  • scale=480:-1 - 宽度设为480px,高度按比例缩放
  • flags=lanczos - 使用高质量缩放算法
  • palettegenpaletteuse - 生成和使用优化的调色板

更多尺寸选项:

# 小尺寸 (320px宽)
scale=320:-1

# 中等尺寸 (480px宽)
scale=480:-1

# 较大尺寸 (640px宽)
scale=640:-1

# 或者按百分比缩放到原尺寸的50%
scale=iw*0.5:ih*0.5

如果还想进一步压缩:

# 降低到5fps,更小尺寸
ffmpeg -i my_video.mp4 -vf "fps=5,scale=320:-1:flags=lanczos,palettegen" palette.png
ffmpeg -i my_video.mp4 -i palette.png -filter_complex "fps=5,scale=320:-1:flags=lanczos[x];[x][1:v]paletteuse" my_video.gif

推荐使用方法2,虽然需要两步,但生成的GIF质量更好,文件大小也更合理。

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐