视频工具 · 转 GIF

GIF 变速

GIF 加速/减速/调帧率

本地处理 · 不上传 免费 · 无需登录 无次数限制 累计 44 次使用
ImageDecoder 解帧 + gifenc 重编码 · 本地处理 · 文件永不上传
当前浏览器不支持 ImageDecoder API,无法逐帧解码 GIF 进行变速。
请升级到较新的 Chrome / Edge(94+)或其他支持 WebCodecs / ImageDecoder 的浏览器后重试。 原 GIF 仍可在左侧预览播放。
点击 / 拖拽 GIF 文件到此 本地解析 · 仅支持 .gif(image/gif) local only · nothing uploaded
变速预览source gif / re-timed gif
选择 GIF 后在此预览原图,
变速完成后并排预览加速 / 减速后的 GIF。
原 GIF 预览
变速后 GIF 预览
原帧数
尺寸
原帧延迟
原时长
变速设置speed / fps
0.25×

变速只改各帧延迟、不改画面:新延迟 = 原延迟 ÷ 倍率(2× 即延迟减半、播放更快)。

1 fps25 fps50 fps

所有帧统一为同一延迟 = 1000 ÷ 帧率(如 10 fps → 每帧 100ms)。

GIF 单帧最小延迟约 20ms。变速后延迟小于阈值时,按比例丢弃中间帧以保持播放速度,避免画面卡顿停滞。

32(更小)256(最佳)
时长对比source vs re-timed
变速
变速后单循环时长 = 原时长 ÷ 倍率。

纯前端原理:用 ImageDecoder API 逐帧解码 GIF(frameCount / 各帧 VideoFrame + 延迟 duration) → 画面不变、只改各帧延迟(速度倍率或目标帧率)→ 各帧画到 canvas → gifenc (quantize / applyPalette / writeFrame 写新延迟 / finish)重编码为变速 GIF。 全程本地运行、文件不上传,无 ffmpeg、无 CDN。

就绪 · 选择 GIF 后解帧并变速
第一节

关于本工具

About

一段循环播放的录屏素材,想截取其中某个动作瞬间做成慢放 GIF,但直接拖进剪辑软件调整帧率后,画面要么卡顿要么文件体积失控。这个工具只做一件事:用 FFmpeg 精准重采样 GIF 的帧间隔与帧率,支持按百分比加速/减速或手动指定目标帧率(0.5-100fps)。处理全程在浏览器本地完成,原始素材不上传服务器——适合社交媒体运营微调动图节奏、开发者在 PR 中嵌入演示片段时控制文件大小。

使用场景

演示动画卡点

产品经理凌晨两点改完第 8 版交互演示 GIF,发现最后两帧的节奏跟背景音乐差 0.3 秒。重新录一遍要花 40 分钟,但用本工具把最后 10 帧单独抽出来,帧率从 15fps 降到 10fps,时长刚好对齐鼓点。不用重录整个流程,改完直接贴进原型文档,赶上了 9 点的评审会。

微信表情包加速

朋友发来一段猫打哈欠的慢动作 GIF,原速播了 3 秒才张嘴,微信聊天里根本没人有耐心看完。用本工具把帧率从 8fps 调到 20fps,总时长压缩到 1.2 秒,张嘴瞬间变成快速弹射效果。发到群里后 5 分钟被转发了 30 次,比原版多了 10 倍传播量。

教程步骤减速

录了一段 Photoshop 抠图教程 GIF,总时长 6 秒,但关键的一步「点选魔棒工具」只占了 0.4 秒。新手根本看不清鼠标点的是哪个按钮。用本工具把那 0.4 秒的区间单独减速到 2 秒,其余部分保持原速。教程发到群里后,当天有 7 个人说「终于看懂了」。

广告素材调速

电商运营做了一组商品展示 GIF,原素材 5 秒循环,但抖音信息流广告要求素材最短 3 秒。重做动画要花 600 元外包费。用本工具把整段 GIF 帧率从 12fps 提到 20fps,时长压缩到 3 秒整,画面依然流畅。省下了外包预算,素材当天就上线跑了 2000 次曝光。

表情包反向恶搞

同事用「疯狂点头」表情包刷屏工作群,原版 1 秒点头 3 次,气势太强。用本工具把帧率从 24fps 降到 6fps,点头速度变成慢动作,配上「领导我错了」的文字。发回群里后,对方自己都笑了,刷屏行为就此停止。调速后文件体积从 2.1MB 降到 0.6MB,手机加载也不卡。

第二节

使用指南

Getting Started

使用步骤

  1. 1上传或拖拽 GIF 文件到虚线框区域,文件预览图会立即显示在输入区右侧
  2. 2拖动「速度」滑块(0.1x–10x)或直接输入数值,下方实时显示调整后的总帧数与时长
  3. 3点击「帧率」下拉菜单选择目标帧率(如 10fps/15fps),右侧预览图同步更新播放效果
  4. 4点击「导出」按钮,浏览器自动下载变速后的 GIF 文件,文件名末尾追加「_sped」标识

输入输出示例

输入输出说明
上传一个 2 秒的 GIF(帧率 10fps),目标速度:2x(加速一倍)输出一个 1 秒的 GIF(帧率 10fps,帧数减半)常规:加速场景,验证帧数按比例减少,帧率保持不变(默认不改变帧率)
上传一个 5 秒的 GIF(帧率 15fps),目标速度:0.5x(减速一倍)输出一个 10 秒的 GIF(帧率 15fps,帧数翻倍,通过重复帧实现)常规:减速场景,验证时长翻倍,帧率不变,帧数通过插帧/重复帧增加
上传一个 1 秒的 GIF(帧率 20fps),目标帧率:10fps(降低帧率)输出一个 1 秒的 GIF(帧率 10fps,总帧数从 20 帧减为 10 帧)边界:单独调帧率(不改变速度),验证帧数按比例减少,时长不变
上传一个 0.5 秒的 GIF(帧率 30fps),目标速度:10x(加速十倍)输出一个 0.05 秒的 GIF(帧率 30fps,帧数从 15 帧减为 1-2 帧)边界:极端加速,帧数被大幅削减到个位数,输出可能接近静态图或极短动画
上传一个 10 秒的 GIF(帧率 5fps),目标速度:0.1x(减速十倍)输出一个 100 秒的 GIF(帧率 5fps,帧数从 50 帧增到 500 帧)边界:极端减速,文件体积可能急剧膨胀(帧数增加 10 倍),注意输出大小限制
上传一个 1 帧的静态 GIF(帧率 1fps),目标速度:2x输出一个 1 帧的静态 GIF(帧率 1fps,无变化)易错:单帧 GIF 无法变速,工具应提示“输入为静态图,变速无效”或原样输出
上传一个 3 秒的 GIF(帧率 12fps),目标速度:1x(不变速),目标帧率:24fps(提高帧率)输出一个 3 秒的 GIF(帧率 24fps,总帧数从 36 帧增到 72 帧,通过插帧实现)易错:同时设置速度和帧率,用户可能混淆“提高帧率”与“加速”,实际时长不变但帧数翻倍

常见错误对照

1.加速后 GIF 文件体积反而变大

✗ 错误直接对 10 帧/秒的 GIF 加速 3 倍,输出文件 15 MB
✓ 修复加速前先用「抽帧」或调低帧率到 5 帧/秒,再加速

FFmpeg 加速默认保留原帧数,帧率不变时每帧间隔缩短,但帧数不变,体积可能不降反升。

2.减速后动画卡顿、跳帧

✗ 错误将 30 帧/秒的 GIF 减速 4 倍,输出时未调整帧率
✓ 修复减速 4 倍时同步将帧率设为 7.5 帧/秒(30÷4),或启用帧插值(motion interpolation)

FFmpeg 减速仅延长每帧停留时间,不补帧;帧率低于 10 帧/秒时人眼会感知明显卡顿。

3.调帧率时忘记保持总时长不变

✗ 错误将 10 帧/秒、2 秒的 GIF 帧率改为 20 帧/秒,输出时长变成 1 秒
✓ 修复调帧率后手动设置输出时长 = 原时长 × (原帧率 ÷ 新帧率),或使用 setpts=PTS*2 保持时长

FFmpeg 的 fps 过滤器只改帧率不改 PTS(时间戳),帧率翻倍时长减半,需配合 setpts 补偿。

4.加速后颜色失真或出现噪点

✗ 错误对包含渐变色的 GIF 加速 5 倍,输出出现大量色块
✓ 修复加速前先用「颜色量化」工具将调色板优化到 256 色,或使用 dither(抖动)算法

GIF 仅支持 256 色,FFmpeg 默认用简单量化会丢失渐变细节;加速放大了每帧差异,色块更明显。

5.减速后文件体积暴增数十倍

✗ 错误将 1 MB 的 GIF 减速 10 倍,输出 30 MB
✓ 修复减速前先降低帧率(如从 20 帧/秒降到 5 帧/秒),或限制输出文件大小(-fs 10M)

FFmpeg 减速通过复制帧实现,帧数增加 N 倍体积也近似增加 N 倍;低帧率减速可减少冗余帧。

6.输入视频格式时未指定 GIF 调色板

✗ 错误直接对 MP4 视频执行 ffmpeg -i input.mp4 output.gif
✓ 修复先生成调色板:ffmpeg -i input.mp4 -vf palettegen palette.png;再合成:ffmpeg -i input.mp4 -i palette.png -lavfi paletteuse output.gif

FFmpeg 直接转 GIF 默认使用全局 256 色,颜色偏差大;两步法先用 palettegen 提取最佳调色板。

7.加速/减速后循环属性丢失

✗ 错误原 GIF 无限循环,加速后只播放一次就停止
✓ 修复在 FFmpeg 命令末尾添加 -loop 0(无限循环)或 -loop -1(部分工具支持)

FFmpeg 默认输出 GIF 的循环次数为 0(不循环),需显式设置 loop 参数恢复原循环行为。

8.调帧率时未考虑原 GIF 的帧延迟不均匀

✗ 错误对帧延迟分别为 10ms、50ms、10ms 的 GIF 统一改为 20 帧/秒
✓ 修复先用 ffprobe 查看原帧延迟分布,再决定是否保留不均匀延迟或统一帧率

GIF 每帧可独立设置延迟,统一帧率会抹平动画节奏(如爆炸特效的慢→快变化)。

第三节

工作原理

How It Works

核心公式

新帧率 = 原帧率 × 速度倍数

变量说明

  • 新帧率变速后的 GIF 帧率,单位 fps
  • 原帧率原始 GIF 的帧率,单位 fps
  • 速度倍数加速倍数(>1)或减速倍数(<1)

示例

原 GIF 帧率为 10 fps,需加速至 2 倍速:新帧率 = 10 × 2 = 20 fps。FFmpeg 将按 20 fps 重新编码,播放时长缩短为原来一半。

上传 GIF(原始帧序列)解析帧 & 调帧率(FFmpeg 变速)输出新 GIF(变速后帧序列)设置速度倍数(0.1x ~ 10x)逐帧时间缩放(保持帧顺序)下载 / 预览(浏览器内)
用户输入 本地处理 输出结果
第五节

常见问题

Q & A
为什么我上传的 GIF 变速后画面变卡了?

变速后画面卡顿通常是因为帧率(fps)没调对。加速时如果保持原帧率,每秒播放的帧数不变但总时长缩短,动作会看起来跳跃;减速时帧数不变但播放变慢,帧与帧之间间隔拉长,导致不连贯。建议加速时适当提高帧率(如原 10fps 加速 2 倍后设为 20fps),减速时降低帧率(如原 20fps 减速 2 倍后设为 10fps)。本工具在变速参数旁提供了帧率输入框,手动微调即可平滑效果。

GIF 能加速到多少倍?有没有上限?

理论上没有硬性上限,但实际受原 GIF 帧数和帧率限制。比如一个 10 帧、10fps 的 GIF,加速 10 倍后只剩 1 秒,再快就变成单帧闪烁,人眼无法辨识。本工具支持输入 0.01 到 100 倍的倍率,超过 10 倍时建议同时调高帧率(至少 20fps)并保持至少 3-5 帧,否则输出可能只有一帧静止画面。如果原 GIF 帧数少于 5 帧,加速效果会很差,建议重做素材。

减速后文件变大了很多,正常吗?

正常。减速时如果保持原帧率,本工具会用 FFmpeg 在关键帧之间插值复制帧,总帧数增加,文件体积自然变大。比如一个 10 帧、100KB 的 GIF,减速 2 倍后变成 20 帧,体积可能膨胀到 150-200KB(具体取决于颜色复杂度)。如果想控制体积,可以在减速时降低帧率(如原 20fps 减速 2 倍后设为 10fps),帧数不变但播放变慢,体积几乎不变。本工具输出页会显示新文件大小,建议对比后调整。

上传的 GIF 太大,处理到一半卡住了怎么办?

本工具基于 FFmpeg 处理,大文件(超过 50MB 或分辨率 2000px 以上)可能因浏览器内存限制卡住。建议先压缩原 GIF:用本站「GIF 压缩」工具缩小体积,或降低分辨率到 800px 以内再上传。如果文件超过 100MB,推荐用桌面端工具处理。另外,上传后页面会显示进度条,若卡住超过 30 秒无反应,刷新页面重新上传一次,避免同时开多个大文件任务。

这个工具是本地处理还是上传到服务器?隐私安全吗?

本工具采用 FFmpeg 的 WASM 版本,所有变速处理完全在浏览器本地完成,不上传任何文件到服务器。即使断网也能正常使用(首次加载需要联网获取 WASM 引擎)。处理后的 GIF 只保存在本地下载目录,不会留存在任何云端。如果对隐私敏感,可以放心使用;但注意大文件(>100MB)会占用较多浏览器内存,建议关闭其他标签页以避免崩溃。

为什么我把视频转成 GIF 后,再用这个工具变速,效果不如直接调视频?

GIF 是 8 位色深(256 色)的索引色格式,色彩和细节远不如视频。从视频转 GIF 时已经损失了一轮画质,再变速只会放大这种损失(尤其是减速时帧间插值产生的色块)。如果最终需要高质量动图,建议直接用视频编辑软件(如 Premiere、剪映)调整视频速度后导出为 GIF,而不是先转 GIF 再变速。本工具更适合对已有 GIF 做快速调整,比如聊天表情包加速或产品展示减速。

变速后颜色变了,有些地方出现杂色条纹,是什么原因?

这是 GIF 格式本身的限制。GIF 使用 LZW 压缩和 256 色调色板,变速时 FFmpeg 需要重新编码每一帧,如果原图颜色渐变丰富(比如照片或视频截图),重新量化到 256 色时会产生色带或噪点。解决方法:1)上传前用图片编辑工具减少原图颜色数到 128 色以下;2)变速后如果颜色问题严重,可以再用本站「GIF 优化」工具降低噪点;3)如果必须保留色彩,建议改用 APNG 或 WebP 格式。

这个工具和手机上的 GIF 编辑 App 比,哪个效果好?

手机 App 通常用硬件加速或 GPU 渲染,变速后画面更流畅,但往往有广告、水印或导出限制。本工具纯浏览器处理,无广告无水印,支持更精细的帧率调节(0.01 精度),适合对参数有要求的用户。但手机 App 可以实时预览效果,本工具需要上传后等待处理。如果只是做一两个表情包,手机 App 更方便;如果批量处理或需要精确控制帧率,本工具更合适。

隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。

选择 打开 +新窗口 esc关闭