图片视频转 GIF
多图按顺序拼成 GIF · 视频片段按帧率采样成 GIF
点击选择(可多选)或拖拽多张图片到此处
JPG / PNG / WebP / BMP;超过最大边长的图只缩小、不放大
点击选择或拖拽一个视频文件到此处
从第 0 秒开始按帧率取样(可用下面的起止秒裁剪)
预览
GIF 是索引色格式(最多 256 色/帧),色块少的图压得小,照片可能有轻微色带。
GIF 体积为什么时大时小
GIF 天生只认 256 种颜色。每帧都要从原图挑出一个调色板(本页用中位切割算法挑 256 个代表色),像素只存"第几号颜色"的索引。纯色/插画/截图这种颜色本来就少的内容压得极小;照片颜色多,压缩时要丢颜色,会出现色带,体积也不一定小——这不是故障,是格式的天花板。
体积 ≈ 帧数 × 每帧像素数 × 压缩率。所以控制体积的杠杆很直接:最大边长调小(像素数平方级下降)、帧数调少(帧率/时长)、循环次数与文件大小无关(只存一个循环标记)。本页生成完先给你看实际体积与帧数,不满意改参数重新生成即可,不用下载再试。
全程在本机。图片解码、视频逐帧取样、调色板量化、GIF 编码(自托管 omggif)都发生在浏览器里,文件一个字节都不上传;视频模式需要浏览器能解码该格式(取决于设备),解码不了会直接提示而不是给你空结果。
常见问题
浏览器能解码的都可以,常见是 MP4 / WebM / MOV,具体取决于设备的解码支持;页面把视频按设定的帧率逐帧取样成 GIF。视频超过 60 秒时按 60 秒内均匀取样,页面会如实显示实际取到的帧数。
GIF 是索引色格式,最多 256 种颜色,每个像素只存一个调色板索引:色块少的图压得极小,照片可能出现色带、体积反而变大。想控制体积,把最大边长调小、帧数调少最有效。
视频输入按帧率取帧,1~15 帧/秒(默认 5);图片输入按每张停留时间,默认 0.5 秒;循环次数 0 为无限循环,也可以指定具体次数。
不会。解码、取样、量化与编码全部在浏览器内完成(GIF 编码器为自托管 omggif),文件一个字节都不出本机,刷新页面即清空;本页没有任何上传接口,可在开发者工具 Network 面板核验。
视频取样需要逐帧定位并解码,手机浏览器内存与解码速度有限。建议最大边长 640 以内、视频 30 秒以内、帧率 5 以下,纯图片批量转 GIF 则基本秒出。