视频转 GIF — 裁剪、调整尺寸,制作高质量 GIF
把 MP4、MOV 或 WebM 片段转成经过调色板优化的 GIF。在预览上截取片段,设置宽度、帧率和循环。不上传任何内容。
发现问题,或者觉得哪里可以更好?每条消息我们都会阅读,并尽快修复。
这款视频转 GIF 工具可以把 MP4、MOV、WebM 或 MKV 文件中的片段转换为 GIF 动图,无需上传到任何地方。拖入视频,在预览上把控制柄拖到你想要的部分,选择宽度和帧率,GIF 就会由编译为 WebAssembly 的 ffmpeg 在你自己的电脑上生成。录屏、产品演示和表情包片段都适用,没有大小上限、水印或排队。
画质的差别来自调色板。GIF 每帧最多只能容纳 256 种颜色,所以转换器会先扫描整个片段,构建一个专为它调校的调色板,再按你选择的抖动方式把每一帧映射到这个调色板上。跳过这一步的转换器使用通用调色板,会产生色带和一层灰蒙蒙的雾感。实话实说它的局限:首次运行需要下载 ffmpeg 引擎(约 32 MB,之后会缓存),而且 GIF 是一种低效的格式,时长较长或画面较宽的 GIF 体积会迅速膨胀。大小估算会在你等待之前告诉你结果。
使用方法
- 把视频文件拖到方框中,或点击选择。手头没有文件?可以生成一段 4 秒的示例片段。
- 拖动播放器下方的起点和终点控制柄,或输入精确时间。播放器会跳到每个控制柄所在位置,让你看到准确的画面。
- 选择宽度(480 px 适合大多数聊天和文档)、帧率(10 fps 是常用默认值)、速度和循环方式。
- 查看大小估算。如果出现警告,请降低宽度或帧率,或缩短选区。
- 点击“生成 GIF”,预览结果,然后下载。
常见问题
如何把 MP4 转成 GIF 而不损失画质?
控制宽度(480–640 px),使用 10–20 fps,保留全部 256 种颜色,并让转换器为该片段构建调色板(本工具始终会这样做)。GIF 每帧最多只能有 256 种颜色,所以与视频相比,一定程度的损失不可避免;但每个片段专属的调色板配合 Sierra 或 Floyd–Steinberg 抖动,效果远胜通用网页调色板。
为什么我的 GIF 这么大?
与视频相比,GIF 的压缩效率很低:大小随宽 × 高 × 帧率 × 时长增长。宽度减半,大小约减少四分之三;从 20 fps 降到 10 fps,大小约减半。颗粒、相机噪点和抖动也会让文件变大;画面平整的录屏比手机拍摄的视频压缩效果好得多。对于较长的内容,MP4 通常小 5–10 倍,画质还更好。
GIF 应该用多少帧率?
10 fps 是常用默认值,用于录屏效果不错;15–20 fps 能让运动画面显得流畅。GIF 以百分之一秒为单位存储帧延迟,所以 10、20 和 25 fps 会以准确的速度播放,而 12 或 15 fps 会被四舍五入到最接近的百分之一秒。帧率过高毫无意义:许多浏览器会放慢短于 2/100 秒的帧。
我的视频会被上传到服务器吗?
不会。文件由 ffmpeg.wasm 在你的浏览器中读取和转换。唯一的下载是 ffmpeg 引擎本身,它从 jsDelivr CDN 获取一次,之后便会缓存。转换时你可以查看浏览器开发者工具中的“网络”标签页:没有任何请求携带你的视频。
可以转换 iPhone 拍的 MOV 吗?
可以。iPhone 的 .mov 文件通常是 HEVC(H.265),Chrome 和 Firefox 往往无法预览,但 ffmpeg 仍然可以解码。如果无法预览,输入开始和结束时间,照常转换即可。设为“兼容性最佳”的 iPhone 会录制 H.264,在任何地方都能预览。
GIF 设置及其代价
每项设置都是在流畅度或清晰度与文件大小之间权衡。对一般片段的粗略规律:
• 宽度:大小按平方增长。800 px 约为 480 px 的 2.8 倍;320 px 不到一半。
• 帧率:大小大致线性增长。20 fps 约为 10 fps 的两倍。
• 颜色:128 或 64 色可为平面图形和界面录屏节省 10–30%,但在皮肤和天空上会出现明显的色带。
• 抖动:Sierra 和 Floyd–Steinberg 能掩盖色带,但会增加难以压缩的噪点;Bayer 的规则图案压缩效果更好;“无”体积最小,适合平面界面。
• 速度:2× 速度会让同一片段的帧数减半,因此大小也减半。
GIF 发布平台的大小限制
转换前值得了解的常见限制:X(Twitter)网页版接受最大 15 MB 的 GIF;Discord 免费版每个文件上传上限为 10 MB;GitHub README 能显示任意大小的 GIF,但超过几 MB 的 GIF 会拖慢页面;Slack 接受大文件,但只会内联自动播放体积适中的 GIF。许多平台反正会悄悄把上传的 GIF 转成 MP4 视频,这就是为什么在平台接受视频时,发布 MP4 或 WebM 往往是更好的选择。
为什么调色板处理很重要
GIF 的每一帧都是索引图像:每个像素都是一个数字,指向一张最多 256 色的颜色表。选择哪 256 种颜色,决定了 GIF 的观感。固定调色板(旧的 216 色网页调色板或某种通用调色板)把大部分条目浪费在片段中从未出现的颜色上,却缺少片段真正用到的色调,结果就是渐变上出现色带,整体蒙上一层暗淡的色调。
本工具使用 ffmpeg 的 palettegen 滤镜统计所选帧中实际出现的颜色(对变化的部分加权,因为那是人眼关注的地方),为该片段构建最佳的 256 色表;然后用 paletteuse 以误差扩散抖动重新映射每一帧,并且只重绘帧与帧之间发生变化的矩形区域,这也让文件更小。