FFmpeg Web CLI
Browser-based video editor powered by ffmpeg.wasm. Convert, trim, compress, and add effects.
Open the official app on tejaswigowda.com
This tool is hosted by its maintainers. Click below to open tejaswigowda.com in a new tab — it's their official demo.
Browse converters tools →What's next with FFmpeg Web CLI?
Choose how you want to get started.
Use it free
Open the official tool or demo — no account needed.
Self-host it
Run the open-source version on your own infrastructure.
What is FFmpeg Web CLI?
FFmpeg WebCLI is an open-source, browser-based video editor powered by ffmpeg.wasm, created by Tejaswi Gowda. Licensed under the GPL-3.0 license and boasting 1100 stars on GitHub, it solves the privacy and security issues inherent in cloud-based conversion tools like CloudConvert, Kapwing, Ezgif, and Otter. While traditional cloud tools require uploading files to external servers where they are exposed to data breaches, subpoenas, and shifting privacy policies, FFmpeg WebCLI ensures all video processing happens entirely on your device with zero data collection. The tool offers over 30 video operations, including format conversion, GIF creation, compression, trimming, effects, filters, and auto-captioning. It supports multi-format handling for MP4, WebM, MKV, MOV, AVI, GIF, MP3, AAC, WAV, OGG, FLAC, JPG, and PNG. Advanced capabilities include raw ffmpeg command access, subtitle embedding, concatenation, picture-in-picture, and audio mixing. Furthermore, it features batch processing for handling multiple files or entire operation chains at once, real-time progress tracking, per-file previews, individual downloads, ZIP-all options, and graceful fallbacks. The application operates as an offline-first PWA, includes a Screen Wake Lock to keep screens active during processing, and delivers fast, responsive background performance using Web Workers.
How it works
FFmpeg WebCLI is an open-source project built around ffmpeg.wasm, leveraging WebAssembly to run multimedia processing code directly within web browsers. It utilizes Web Workers for background processing to keep the UI fast and responsive. The application runs as an offline-first Progressive Web App (PWA), enabling it to function completely offline after the initial load. Operationally, it makes use of SharedArrayBuffer, which requires hosting environments to serve content with specific security headers: Cross-Origin-Opener-Policy (COOP) set to same-origin and Cross-Origin-Embedder-Policy (COEP) set to require-corp. Developers can run the tool locally by cloning the GitHub repository and using Node.js via server.js or an npx static server to serve the docs/ directory with the required headers.
How to use it
- 1Open the FFmpeg Web CLI page
- 2Use the tool directly in your browser
- 3Results appear instantly — no waiting, no downloads
What it can do
- Conversion
- Optimization
Use cases
Assumptions and limitations
Assumptions
- source: https://github.com/tejaswigowda/ffmpeg-webCLI
- license: GPL-3.0 — free to use
- privacy: Opens an external demo
Limitations
- Requires a browser and environment that supports SharedArrayBuffer, necessitating specific Cross-Origin headers (COOP/COEP) if self-hosted.
- Processing heavy video tasks depends entirely on the local device's CPU and hardware capabilities via WebAssembly.
- Works completely offline only after the initial online load fetches and caches the ffmpeg assets.
- Installation as a native-like app is dependent on browser support for Progressive Web Apps (PWAs).
Understanding the result
Browser-based video editor powered by ffmpeg.wasm. Convert, trim, compress, and add effects.
Tool details
- Clearly flagged when a network request is needed.
- No account, no sign-up, and no tracking of your content.
- Powered by ffmpeg-webCLI (GPL-3.0).
- Built with
- ffmpeg-webCLI (tejaswigowda/ffmpeg-webCLI)
- License
- GPL-3.0
- Runs locally
- No — requires a network request
- Verification
- Not yet verified
- Input
- Text Input
- Output
- Converted Output, Compressed File
Built with tejaswigowda/ffmpeg-webCLI. OpenToolVault provides the discovery and browser interface while crediting the original project maintainers.
- Built with
- ffmpeg-webCLI
- License
- GPL-3.0
Open-source project
OpenToolVault is an independent directory. We are not affiliated with or endorsed by this project.
References
- tejaswigowda/ffmpeg-webCLI — GitHub Repository
Upstream project · GitHub
- GPL-3.0 License
Upstream project
Frequently asked
How does FFmpeg WebCLI process videos without uploading them to a server?
It uses ffmpeg.wasm, running WebAssembly and Web Workers directly in your browser so that all video processing happens entirely on your local device.
What server headers are required if I want to host FFmpeg WebCLI locally?
You must serve the docs/ folder with a server that sets Cross-Origin-Opener-Policy: same-origin and Cross-Origin-Embedder-Policy: require-corp headers, which are required for SharedArrayBuffer.
Can I process multiple files or execute complex workflows at once?
Yes, it supports batch processing where you can apply the same operation or an entire operation chain to multiple videos, complete with real-time progress and a ZIP-all download option.
How does FFmpeg WebCLI compare to cloud converters like CloudConvert or Kapwing?
Unlike cloud tools that upload your files to external servers and expose them to data breaches or shifting privacy policies, FFmpeg WebCLI performs all conversions locally in your browser for free with zero data collection.
What happens to my screen while a long video is processing?
The app includes a Screen Wake Lock feature that automatically keeps your device's screen active during video processing to prevent interruptions.