【发布时间】:2019-07-21 17:50:03
【问题描述】:
我从屏幕截图中创建了一个动画output.gif,最终未压缩为 89MB。一半的 GIF 是静态的,但最好将它们放在一起,而不是图像 + 包含移动部分的 GIF。
使用 Imagemagick 和以下命令,我设法将其大小减小到 18.1MB:
convert output.gif -coalesce -fuzz 3% +dither -layers Optimize compressed.gif
增加百分比会产生更小的尺寸结果,但质量会受到影响。
鉴于此 GIF 包含较大的静态非动画区域,您是否建议使用一个选项来在不影响质量的情况下更好地减小文件大小?
更新我为此使用 Ubuntu,这是我的完整工作流程:
- 使用Kazam 截屏正是我需要的,因此无需进行任何类型的编辑。
- 使用命令
ffmpeg -i input.avi output.mp4转换为mp4。 - 为框架创建目录
mkdir frames。 - 生成中间图像
ffmpeg -i output.mp4 -r 25 'frames/frame-%04d.png'。 - 转到帧
cd frames。 - 从图像
convert -delay 4 -loop 0 *.png output.gif生成 GIF。 - 优化和压缩 GIF 以减小文件大小
convert output.gif -coalesce -fuzz 3% +dither -layers Optimize compressed.gif
【问题讨论】:
-
avi是否可以接受 - 会更小。您也可以尝试删除-fuzz 3% +dither并将其替换为-colors 32或-colors 63看看是否有帮助。 -
嗨@MarkSetchell!感谢您的回复。我最初有 AVI,但它是 1.7GB 左右。我正在使用完整的工作流程更新我的问题。
-
请参阅imagemagick.org/Usage/anim_opt 了解 gif 动画优化。为所有帧使用一个通用颜色图。在imagemagick.org/Usage/quantize/#remap_common 上查看 -remap
标签: image imagemagick compression gif animated-gif