压缩坞核心工作流

微信发视频超 25MB 被拒?邮件附件卡在大小限制?录屏文件动辄好几百 MB 根本传不出去?压缩坞(Media Compress Hub)就是为这类「临时要压一下又不想装软件、更不想上传到陌生服务器」的场景而生的——一款开源免费的浏览器端本地压缩工具,图片、GIF、视频全在本地处理,文件不出设备。

压缩坞是什么?

压缩坞(Media Compress Hub)是一款基于 Web Worker + FFmpeg.wasm 技术栈的浏览器本地媒体压缩工具,支持 JPG/PNG/WebP/AVIF/BMP 图片、GIF 动图以及 MP4/MOV 视频文件压缩。项目采用 AGPL-3.0 开源许可,核心卖点一句话:拖入文件 → 设定目标 → 本地压缩 → 下载结果,全程零上传。

五大核心功能

1️⃣ 浏览器本地压缩,文件绝不出设备

所有压缩运算在浏览器本地完成——图片走 Web Worker多线程编码,GIF 和视频借助 FFmpeg.wasm 浏览器内转码。不经过任何第三方服务器,隐私敏感文件(证件照、内部录屏、医疗影像)放心处理。

2️⃣ 自定义目标体积

不想手动调「质量75、码率2M」这些参数?直接告诉压缩坞你想要的结果——比如「压到 20MB 以内」,工具自动搜索合适的压缩参数逼近目标值。对微信传文件、邮件附件大小限制这类场景特别实用。

3️⃣ 多格式一站覆盖

  • 图片:JPG / PNG / WebP / AVIF / BMP
  • 动图:GIF(支持帧率调整和颜色降级)
  • 视频:MP4 / MOV(支持分辨率、码率、帧率调节)

一个页面搞定三种媒体类型,不用分别找 TinyPNG、HandBrake、GIF优化器三个工具。

4️⃣ PWA 支持 + Electron 桌面版

浏览器打开即可使用,也可以安装为 PWA离线运行。项目还提供了 Electron 桌面版源码,需要桌面应用体验的可以自行构建(目前缺 macOS 预编译包,Windows/Linux 可直接下载)。

5️⃣ 开源可自部署

AGPL-3.0 许可证,个人使用完全免费。团队或企业需要私有压缩服务时,可基于源码自行部署到内网 Vercel / Docker,所有数据仍在自己服务器上。注意:AGPL 要求修改后公开提供服务时需开源修改部分。

使用场景

场景 痛点 压缩坞方案
微信/钉钉发文件 大小限制 25MB/100MB 设目标体积,一键压到限额内
邮件附件 附件大小限制 20-25MB 自定义目标 20MB,自动逼近
网站素材优化 手动调质量参数反复试 批量拖入,目标体积一次搞定
隐私敏感文件 不敢上传第三方压缩站 全程本地,零上传零泄露
临时压缩录屏/课程 几百 MB 根本传不出去 视频码率+分辨率一键压

技术细节

  • 图片压缩:通过 Web Worker 调用浏览器原生 OffscreenCanvas + createImageBitmap 编码,多线程并行不卡 UI
  • GIF/视频压缩:内嵌 ffmpeg.wasm(FFmpeg 的 WebAssembly 移播),支持 H.264 编码、码率控制、分辨率缩放
  • 目标体积逼近算法:二分搜索 + 质量参数迭代,最多 5-8 次迭代逼近目标值
  • PWA 离线:Service Worker 缓存核心资源,断网也能用

已知限制

  • 大文件依赖设备硬件——5GB 视频在低内存设备(4GB 以下)可能崩溃
  • 桌面版缺 macOS 预编译包,需自行构建
  • AGPL-3.0 对二次开发有源码开放要求,商业深度定制需注意合规
  • 浏览器端压缩速度不如本地 FFmpeg 命令行(wasm 有一定性能损耗)

同类型工具对比

工具 本地处理 目标体积 视频支持 GIF支持 开源
压缩坞 ✅ AGPL
TinyPNG ❌ 上传
HandBrake ✅ GPL
Squoosh ✅ Apache
tools.video ❌ 上传

压缩坞是目前唯一同时支持本地处理 + 目标体积 + 图片/GIF/视频三合一的开源浏览器端压缩工具。

快速开始

  1. 打开官网 media-compress-hub.vercel.app
  2. 拖入或选择文件(支持批量)
  3. 设定目标体积或自定义压缩参数
  4. 点击压缩,等待完成后下载

⚠️ 首次压缩视频/GIF时需要加载 FFmpeg.wasm 核心(约 25MB),后续使用会自动缓存。

项目地址

本文由宅叔整理发布,如涉及版权问题请联系我们。文中信息以项目官方说明为准。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。