为什么 GIF 文件这么大?
阅读约 2 分钟
一段三秒的 GIF 比一分钟的视频还大,这很常见。原因在于这个格式太老了。
这个格式诞生于 1987 年
GIF 最初是为低速网络上的静态图片设计的,动画是后来才加上的,而它一直没有获得现代的压缩手段:
- 简单的 LZW 压缩。 每一帧单独用通用算法压缩,而不是专为图像设计的算法;
- 没有运动预测。 视频编码会描述画面块如何在帧之间移动,GIF 做不到,只能存储变化的像素;
- 每帧最多 256 色。 实拍画面需要抖动(dithering)来模拟更多颜色,而抖动噪点很难压缩;
- 每个像素都要精确存储。 没有“差不多就行”的概念,除非使用有损压缩。
是什么让某个 GIF 特别大
| 因素 | 对体积的影响 |
|---|---|
| 尺寸 | 随像素面积增长:宽高各翻倍,体积约为 4 倍 |
| 帧数 | 大致与时长 × 帧率成正比 |
| 镜头移动 | 每帧所有像素都在变,什么都省不掉 |
| 噪点和抖动 | 杂乱的像素很难压缩 |
| 纯色、静止背景 | 压缩效果非常好 |
一段界面基本不动的录屏可以很小;同样时长的手持手机视频却可能非常大。
怎样把它变小
- 无损优化,只保留变化的像素;
- 轻度有损压缩,容忍细微差异;
- 缩小尺寸到实际显示的大小;
- 能的话剪短或降低帧率。
GifSmaller 会按顺序自动执行前三步,直到 GIF 达到你的目标。详见 如何把 GIF 变小。
什么时候不该用 GIF
如果目标平台支持视频(大多数社交平台都支持,X 也会把 GIF 转成视频),MP4 通常小得多、画质也更好。GIF 更适合它擅长的场景:表情、聊天反应图、README、文档和邮件,在哪里都能直接播放,不需要播放器。
用你的 GIF 试试
在浏览器里压缩,免费,不上传任何文件。
打开压缩工具