写技术文档、做产品 Demo 或者做动图表情包时,经常要把一段几秒的小视频转成 GIF。以前用过不少在线工具,要么强制上传服务器等排队,要么导出的 GIF 体积动辄几十兆,画质还糊。
为了彻底解决 “不想上传原片到别人服务器” 的顾虑,我顺着之前的工具链上线了 Video to GIF Converter 。 体验:https://videotoframes.com/video-to-gif
核心逻辑是直接用 WebAssembly(FFmpeg / libvpx 编译)在浏览器本地提取视频关键帧并量化生成 GIF。全程不经过任何后端服务器,保证了本地隐私,也省掉了服务器转码的算力与带宽开销。页面上还加了帧率调节、分辨率缩放和色彩调色板(PaletteGen)自适应优化。
关键数据:
性能表现: 1080P 5 秒视频,前端抽取 15fps 生成 GIF 平均耗时约 2.5 - 4 秒(主流现代浏览器)。
文件体积: 加入了双通道调色板算法后,相同画质下导出的 GIF 体积比无脑转码减少了约 40%-60%。
成本开销: 依旧是全静态部署,$0 服务器转码成本,上线几天后自然搜索与小工具站回流开始出现稳定长尾点击。
下次会改什么:
Wasm 资源预加载优化: 初始加载 ffmpeg.wasm 库时资源偏大(约 20MB+ gzip 后稍小),部分弱网用户首屏等待偏长,后续计划做成按需惰性加载或拆包。
预览与裁剪功能增强: 增加更直观的视频时间轴拖拽与裁剪区间选择器,让用户不用提前先剪视频。
内存兜底保护: 处理超过 30 秒的长视频时,部分手机浏览器容易爆内存,下次计划加入时长硬限制提示或自动降采样保护。
暂无回复。