Every frame, pulled out and ready to grab.
Browsers don't let a page read a video file's frames directly. This tool plays the video at normal (or faster) speed and captures each frame as the browser renders it, using the same low-level hook video players use internally (requestVideoFrameCallback) where your browser supports it — which is effectively frame-accurate on current Chrome, Edge, Firefox, and Safari. On an older browser without that API, it falls back to grabbing frames at the estimated frame rate above instead.
A 10-minute video at 30fps has 18,000 frames — extracting and holding all of those as separate images can exhaust your browser's memory and crash the tab. The cap keeps things extracting the frames evenly spaced across the video instead of stopping partway through, once the video would produce more frames than the cap allows. Raise it if you know your device can handle more.
No. Every step — playback, frame capture, encoding, zipping — happens locally using your browser's own video and canvas APIs. Nothing about the video or its frames ever leaves your device.