视频转 GIF

纯浏览器本地处理,不上传。稳定优先:截取≤10秒、总帧数≤200、输出分辨率受限(建议 maxWidth=480、fps=10、duration=3s)。

生成 GIF

选择一个视频文件,设置起始时间、截取时长与 FPS,点击开始生成。为稳定优先,超出上限会提示你调整参数。

选择视频文件
本工具默认纯浏览器本地处理,不上传。稳定优先限制:截取 ≤ 10 秒、总帧数 ≤ 200、输出像素上限、编码颜色数可控。
支持拖拽文件到此处。建议短视频/小分辨率优先。
参数设置(稳定预设可直接用)
稳定性保护说明
  • 截取时长上限:10 秒。
  • 总帧数上限:200(总帧数 = FPS × 时长)。
  • 输出像素上限:约 1.2M 像素(过大分辨率会显著增加内存与耗时)。
  • maxColors 越低通常越省体积,但画质可能下降(建议 128 起步)。
状态: 待处理

工作方式(本地处理)

该工具会在浏览器中逐帧定位视频时间点,将画面绘制到 Canvas,并用 modern-gif 在本地编码为 GIF(支持 maxColors 降色)。 文件不会上传;下载链接通过 ObjectURL 创建,并在组件卸载时回收。

使用建议

  • 优先截取短片段(2–6 秒),更容易稳定生成并控制体积。
  • 输出过大时,优先降低 maxWidth,其次降低 FPS,再缩短 duration。
  • 若平台支持,通常 MP4/WebM 更小更清晰;GIF 更适合“短、循环、无需点击播放”的场景。

常见问题(FAQ)

为什么要限制时长/帧数?
视频抽帧与 GIF 编码会占用主线程与内存。限制上限可以显著降低卡顿/崩溃概率,优先保证“能稳定跑完”。
生成慢或卡住怎么办?
请降低 maxWidth 或 FPS,或缩短 duration;也可以使用“取消”停止当前任务,然后用更小参数重试。
会上传视频吗?
不上传。文件只在浏览器内读取处理。隐私细节见 /privacy
导出后体积仍然很大?
GIF 对分辨率与帧数非常敏感。建议先降低 maxWidth,再降低 FPS。也可配合 GIF 压缩 做进一步体积优化。