How it works
Video To Frames Converter does all of its work inside your browser, and the other tools do too. Here's exactly what happens to a file, which technologies are involved, and how you can verify that nothing is uploaded.
What happens when you open a file
- Reading. When you choose or drop a file, the browser gives the page a handle to it (the File API). The page reads the bytes it needs directly from your disk. There is no upload step, so there's nothing to wait for.
- Demuxing. Video files are containers (MP4, MOV, WebM, MKV) holding compressed video and audio. A JavaScript library, Mediabunny, reads the container's index to find each frame's position and timestamp, which is what makes frame-exact extraction and fast keyframe-only mode possible.
- Decoding. Frames are decoded by WebCodecs, the video decoder built into your browser, usually with hardware acceleration. This happens in a background Web Worker so the page stays responsive.
- Encoding. Frames are drawn to an off-screen canvas and encoded as PNG, JPG or WebP by the browser. GIFs are encoded with gifenc, MP3 with the LAME encoder compiled to WebAssembly, and AAC or Opus with the browser's own audio encoder.
- Saving. Results are kept in memory (or, for very large jobs, in the browser's private origin storage) until you download them. ZIP files are assembled in the browser as they're downloaded.
When WebCodecs isn't available
If your browser can't decode a video with WebCodecs but can still play it, the frame tool falls back to a simpler method: it seeks a hidden video element to each time and copies what it shows. It's slower and can be off by one frame, which is why the page tells you when this happens. HEIC photos are decoded by Safari natively; other browsers use libheif compiled to WebAssembly, which is downloaded only when you actually open a HEIC file.
Check it yourself: the offline test
The strongest evidence that files aren't uploaded is that the tools work without a connection:
- Open any tool and let the page finish loading. Open one test file so the decoder libraries load too.
- Turn off Wi-Fi or unplug your network cable.
- Open another file and run the tool. It works, because everything it needs is already in the tab.
You can also open your browser's developer tools, switch to the Network panel and watch while you process a file: no request carries your file. If you install the site as an app, its static files are cached so the tools open offline too. User files are never cached.
What we do see
Like any website, the server sees requests for the pages, scripts and fonts themselves. If analytics is enabled, it records anonymous usage events such as which mode or output format was used, the number of frames in broad buckets (for example 11–100) and error codes. It never records file names, file contents, frame images or anything derived from them. See the privacy policy for details.
Open-source libraries
The tools are built on open-source software. The full list with licenses is on the open source licenses page.