跳到正文
支持 MP4、MOV、WebM、MKV

视频转 GIF — 支持 MP4、MOV、WebM

把视频转成 GIF,而视频哪儿也不用去。解码由你自己的浏览器逐帧完成,要留哪几秒、用什么帧率,都由你说了算。

视频不会离开这个标签页——本来也没有服务器可以送。

  • 不上传
  • 免注册
  • 无水印

从片段到 GIF

整个转换都在本机跑,所以 200MB 的源文件不会让你等上传。

  1. 1

    添加视频

    拖进 MP4、MOV、WebM 或 MKV。一开始只读元数据,所以再长的录屏也是秒开。

  2. 2

    裁剪并抽帧

    设好入点和出点,再选帧率。只有保留下来的这一段会被抽帧,过程中有进度显示。

  3. 3

    调整并导出

    调色、加字幕、看一眼预估体积,然后导出。如果 GIF 并不适合投放的地方,也可以直接导出 MP4 或 WebM。

专门为麻烦的部分设计

先裁再解码

只有你保留的那一段会被转成帧。从 10 分钟录像里截 6 秒,解码的就是这 6 秒,不是 10 分钟。

逐帧定位

用方向键一帧一帧走,找到那个准确的瞬间。停在哪一帧,导出的就是哪一帧。

录屏文件也能正常处理

录屏软件产出的 WebM 在文件头里没有时长。我们会在裁剪前先把真实长度解出来,而不是悄悄导出一张定格画面了事。

也能导出视频

如果目标平台收视频,同等画质下 MP4 和 WebM 比 GIF 小一个数量级。同一条时间轴、同样的编辑,换个容器而已。

帧到底是怎么从视频里取出来的

浏览器不会直接把 MP4 的"第 147 帧"递给你。它能做的是把 video 元素跳到某个时间点,然后让你把当前画面复制走。这里走的就是这条路:跳转、等它稳定、抓取、再来一遍。

这不是最快的办法,WebCodecs 才是;但 WebCodecs 还要求你自己拆容器,而容器里那些编码格式的支持情况又因浏览器和系统而异。跳转抓帧在哪儿都能跑通——当另一条路的代价是直接转换失败时,这比速度更值钱。

选一个不会后悔的帧率

帧率几乎是按线性放大文件体积的,而 GIF 本来也表达不了任意帧率。讲话画面和界面录屏用 12.5fps 就够;动作快的素材值得上到 20 到 25fps;超过 25fps,大多数时候你买到的只是更大的文件。

体积预估会随着你的调整实时更新,而且是真的编码出来量的,不是套公式估的。如果数字看着不对,先把帧率砍一半,再去动颜色数量——花钱的通常是运动本身。

格式与限制

支持范围取决于你的浏览器,而不是我们——我们直接用它的解码器。

输入视频MP4(H.264)· WebM(VP8/VP9)· MOV · MKV · OGV
输出GIF · MP4 · WebM · PNG / JPG / WebP 序列帧
音频不保留——GIF 本身没有音轨,而时间轴还能重排和倒放片段
单个项目帧数最多 600 帧
上传体积限制没有。因为不存在上传。

大家真正会问的问题

有文件大小限制吗?
没有,因为什么都不上传。实际的天花板是抽帧过程中你设备的内存,所以处理长录像时先裁剪是个好习惯。
为什么不能保留音频?
GIF 完全没有音轨。导出 MP4 和 WebM 时技术上倒是可行,但时间轴允许你重排、倒放、改速度,没有一种诚实的办法能让声音跟着对上。与其做一个只在部分情况下正确的功能,不如不做。
我的 MOV 打不开,为什么?
MOV 只是个容器,关键在里面的编码。ProRes 和部分手机拍的 HEVC 是大多数浏览器解不了的。先转成 H.264 的 MP4 就可以了。

相关工具

同一个工作台,对着另一件事使。

上面这些,全都在这个标签页里跑

不上传、不注册、无水印。打开工作台自己看一眼。