FFmpeg WebCLI:浏览器中运行完整 FFmpeg,离线处理视频,文件无需上传
标签: FFmpeg / WebAssembly / WebCLI / 视频处理 / PWA / 浏览器 / ffmpeg.wasm / 离线工具
原文: 微信公众号「吴建明利驰数字」https://mp.weixin.qq.com/s/6_L3NIAbQIWvBmHzhMIiiQ
GitHub: https://github.com/tejaswigowda/ffmpeg.wasm.editor
在线体验: https://tejaswigowda.com/ffmpeg-webCLI/
核心亮点
FFmpeg WebCLI 基于 ffmpeg.wasm 构建,通过 WebAssembly 将完整 FFmpeg 移植到浏览器中。视频处理全程本地完成,无需上传文件、无需服务器,首次加载后可离线使用,支持 30+ 种操作。
痛点:传统视频处理的麻烦
过去做视频压缩、格式转换、GIF 制作,往往需要:
- ❌ 安装 FFmpeg、Premiere 或各种桌面软件
- ❌ 上传文件到服务器处理(隐私风险)
- ❌ 依赖网络连接
FFmpeg WebCLI 是什么?
直接把完整 FFmpeg 运行在浏览器里,基于 WebAssembly 技术,实现了无需上传、无需服务器、全程本地处理的视频编辑体验。
核心优势
- ✅ 本地处理:视频全程在浏览器完成,无需上传
- ✅ 30+ 操作:GIF、格式转换、压缩、剪辑、特效、滤镜
- ✅ 离线 PWA:首次加载后可离线使用,可安装为应用
- ✅ 屏幕唤醒:处理过程中屏幕保持激活
- ✅ 隐私保护:零数据上传
- ✅ 跨平台:桌面浏览器 + 移动端 Chrome/Firefox/Safari
支持格式
| 类型 | 格式 |
|---|---|
| 视频 | MP4、WEBM、MKV、MOV、AVI |
| 图片 | GIF、JPG、PNG |
| 音频 | MP3、AAC、WAV、OGG、FLAC |
核心功能
基础操作
| 功能 | 说明 |
|---|---|
| GIF 制作 | 任意视频转动画 GIF,保留最佳颜色 |
| 格式转换 | MP4 / WebM / MKV / MOV / AVI |
| 压缩 | CRF 滑块调节质量,实时预估大小 |
| 剪辑 & 裁剪 | 设置起止点和区域 |
| 尺寸调整 | 自动保持比例并压缩 |
进阶操作
| 功能 | 说明 |
|---|---|
| 音频操作 | 提取、混合、静音、音量调节 |
| 速度调节 | 0.25×–4×,保持音视频同步 |
| 旋转 / 翻转 | 90° / 180° / 镜像效果 |
| 画中画 & 并排 | 多视频叠加 |
| 字幕 & 元数据 | 嵌入字幕或去除元数据 |
滤镜特效
亮度、对比度、饱和度调整,锐化、模糊、去噪、暗角、淡入淡出。
高级功能
- ✅ 原生 ffmpeg 命令:支持直接输入 ffmpeg 命令
- ✅ 字幕嵌入:支持 SRT/ASS 字幕
- ✅ 视频拼接:多段视频合并
- ✅ 画中画:多视频叠加
- ✅ 音频混合:多音轨混音
使用方式
Step 1: 加载 ffmpeg
首次下载约 31 MB 的 WebAssembly 文件。
Step 2: 拖入视频
设置剪辑点(可选)。
Step 3: 选择操作
调整参数,实时预览大小。
Step 4: 处理视频
全程本地完成。
Step 5: 预览并下载
PWA 特性
FFmpeg WebCLI 支持作为 渐进式 Web 应用(PWA) 使用:
- 📱 可安装为应用 —— 添加到桌面/主屏幕
- 📴 完全离线 —— 首次加载后无需网络
- 💾 智能缓存 —— 自动缓存资源
- 🔔 自动屏幕唤醒 —— 处理时防止屏幕休眠
- 🖥️ 跨平台 —— 桌面 + 移动端全支持
本地运行
git clone https://github.com/tejaswigowda/ffmpeg.wasm.editor
cd ffmpeg.wasm.editor
node server.js
服务器自动配置支持 SharedArrayBuffer 的 COOP/COEP headers。
技术栈
| 技术 | 用途 |
|---|---|
| ffmpeg.wasm | FFmpeg 的 WebAssembly 移植 |
| WebAssembly | 浏览器端高性能计算 |
| PWA | 离线安装、缓存、屏幕唤醒 |
| Node.js | 本地开发服务器 |
写在最后
FFmpeg WebCLI 证明了一件事:浏览器正在成为越来越强大的应用平台。
通过 WebAssembly,原本只能在本地或服务器运行的工具,现在可以完全在浏览器中运行,且性能越来越好。
核心价值
✅ 零安装 —— 打开浏览器即用
✅ 零上传 —— 文件不离开你的设备
✅ 离线可用 —— PWA 安装后断网也能用
✅ 30+ 操作 —— 覆盖绝大多数视频处理需求
✅ 原生命令 —— 支持直接输入 ffmpeg 命令
适合谁?
- 不想安装桌面软件的临时视频处理需求
- 注重隐私,不想上传视频文件的用户
- 需要离线视频处理能力的场景
- Web 开发者学习 WebAssembly 的参考项目
相关链接
- GitHub: https://github.com/tejaswigowda/ffmpeg.wasm.editor
- 在线体验: https://tejaswigowda.com/ffmpeg-webCLI/
- 底层依赖: https://github.com/nicedoc/ffmpeg.wasm
Keywords: FFmpeg, WebCLI, WebAssembly, ffmpeg.wasm, 浏览器视频处理, PWA, 离线工具, 视频压缩, GIF制作, 格式转换, 隐私保护