参数调优 约 6 分钟
视频转 GIF 的体积控制:宽度、帧率与颜色数
GIF 的体积由宽度、高度、帧数与颜色数共同决定。一段 10 秒的 1080p 视频直接转 GIF 可超过 50MB;把宽度降到 480px、帧率降到 12fps、颜色降到 128,同一段内容通常落在 2-5MB,且肉眼观感差异很小。
GIF 体积从哪来
GIF 是逐帧存储的位图序列:体积约等于「宽 × 高 × 帧数 × 每像素信息量」。帧数 = 时长 × 帧率,10 秒视频按 30fps 转换就是 300 帧,每帧都是一张完整图片。
GIF 每帧最多 256 色(8 位调色板),这是 1987 年定下的格式上限。视频源是 24 位真彩色,转 GIF 时颜色被量化到调色板,渐变色区域会出现色带,需要抖动算法(dithering)缓解。
三个参数的场景取值
| 参数 | 聊天表情 | 文章配图 | 产品演示 |
|---|---|---|---|
| 宽度 | 240-320px | 480-640px | 640-800px |
| 帧率 | 10-12fps | 12-15fps | 15-24fps |
| 颜色数 | 128 | 128-256 | 256 |
| 典型体积(10 秒) | 0.5-1.5MB | 2-5MB | 5-10MB |
宽度对体积的影响是平方级的(宽 × 高),帧率是线性的。需要大幅缩减体积时,优先降宽度,其次降帧率,最后降颜色数——颜色低于 128 后画质劣化明显加快。
转换后仍超出预期怎么办
已有 GIF 可以再压缩:降低帧率、缩小宽度、减少颜色数。注意 GIF 再压缩是在已量化的画面上二次处理,画质收益递减,建议从视频源重新生成而不是反复压同一个 GIF。
内容层面:截取最必要的片段。GIF 的体积与时长线性相关,10 秒砍到 4 秒,体积直接减少 60%。
考虑 WebP 动图替代
WebP 动图支持 24 位真彩色与更高效的帧间压缩,同画质下体积通常比 GIF 小 30-70%,且没有 256 色限制,渐变与照片内容不会出现色带。
限制在于兼容性:微信聊天窗口、旧版 Office、部分邮件客户端不支持 WebP 动图。发往这些渠道仍应使用 GIF;发布在自有网站、支持 WebP 的平台则优先 WebP。