Capture Any Video Frame in One Click — IMGLAB Video Screenshot for Chrome 📷✨

Chrome Extension Free · MV3 6 min read

That frame you wanted.
Captured in one click.

A camera button on every video, on every website — including videos buried inside cross-origin iframes. JPEG, WebP, or PNG. Full native resolution. No watermarks. No sign-up. Completely free.

3
Output formats
JPG · WebP · PNG
4
Button positions
configurable
Sites supported
all_urls
$0
Cost, forever
100% free

You’re watching a video. A perfect frame flashes by — a data visualisation, a movie still, a diagram in a tutorial. You reach for a screenshot tool and by the time it fires you’ve lost the moment, or you get the whole screen with the taskbar and browser chrome polluting it.

IMGLAB Video Screenshot puts a 📷 button directly on the video. Hover, click, done. The file lands in your Downloads folder with a sensible filename and the exact frame you wanted, at full resolution.

🎯
Any site, any video
🖼️
Cross-origin iframes
⌨️
Ctrl+G shortcut
📐
Native resolution
🔒
No data collected
01

What makes this different from Print Screen

The OS screenshot captures everything visible — browser chrome, other windows, notification banners. IMGLAB captures only the video canvas pixels, at the video’s native encoded resolution rather than the shrunk display size. A 1080p stream in a 640px-wide player still exports as a 1920×1080 image.

The second difference is cross-origin iframe support. When a video lives inside an embedded player from a different domain — the most common setup on the modern web — browser security blocks canvas access. IMGLAB detects this and falls back to tab capture + precise crop, so you get a clean image instead of an error.

💡
How the dual-engine capture works

Same-origin video: draws directly to an HTML5 canvas at native resolution — pixel-perfect, captures subtitle overlays baked into the stream. Cross-origin video: falls back to chrome.tabs.captureVisibleTab, then crops precisely to the video element’s bounding rect × device pixel ratio, accounting for iframe offsets.

02

The features that matter day-to-day

⭐ Core feature
Camera button on every video — appears on hover, never in the way

The button fades out during playback and reappears when the video is paused, so it never blocks what you’re watching. Four configurable positions: top-left, top-right, bottom-left, bottom-right. Bottom positions have a 54px offset to clear player control bars. Position changes apply live to every open tab — no refresh needed.

💡 The extension polls every 1.5 s + MutationObserver to catch dynamically loaded videos — it works even on infinite-scroll feeds.
Smart keyboard shortcut — default Ctrl+G

Press the shortcut and the extension picks the best video on screen: currently-playing videos first, then the one nearest the centre of the viewport. Works inside iframes too — if no video is found in the main page, the signal is broadcast via postMessage to all child frames.

Format, quality, size filter — all in the popup

Switch between JPEG, WebP, and PNG. Drag the quality slider (10–100) — it dims automatically when PNG is selected. Set a minimum video size to skip tiny thumbnail previews and ad players. All settings sync instantly to every open tab via chrome.storage.sync.

Auto-named files — never “download.jpg” again

Files are saved as IMGLAB-PageTitle-HH-MM-SS.jpg. Even inside sandboxed cross-origin iframes that silently block direct downloads, IMGLAB relays the download through the top-level frame via postMessage — your file arrives with the correct name every time.

03

Four sites blocked by default — here’s exactly why

Most video sites work perfectly. A small number have engineering choices at the infrastructure level that make compatibility impossible — not difficult, impossible. We block these by default rather than pretend the extension works when it doesn’t.

🚫
Four pre-blocked domains — and the honest reason for each
facebook.com
FB’s player intercepts every click on the video element and routes it through its own handler — opening cinema mode instead. Our button cannot physically be clicked. Not fixable.
tiktok.com
TikTok’s anti-tamper MutationObserver detects our button element and immediately pauses and freezes the video. Confirmed across three debugging sessions. Not fixable without reverse-engineering their code.
weibo.com
Weibo’s player renders a full-UI overlay at a z-index higher than anything injectable. Tab capture grabs the controls, not the video frame. The result is not useful.
reddit.com
Reddit’s player architecture means no native <video> elements are found. The button never appears and the shortcut returns “no active video.” Nothing to offer here.
⚠️
Two limitations worth knowing before you install

DRM-protected content (Netflix, Disney+, etc.) renders on a protected GPU compositing layer that no browser extension can access. Canvas capture returns a black frame — this is enforced by the OS/driver, not a bug we can fix. Overlay UI in tab-capture fallback: when the cross-origin fallback is used, any player controls layered on top of the video area will appear in the screenshot. This is a fundamental constraint of how captureVisibleTab works.

04

Installation — four steps, under a minute

1️⃣
Get the extension

Download from the Chrome Web Store or our page. Unzip to a permanent folder — it must stay there while the extension is installed.

2️⃣
Load unpacked

Open chrome://extensions/, enable Developer Mode, click “Load unpacked,” and select your unzipped folder.

3️⃣
Allow on all sites

Click the 🧩 icon → ⋮ → “On all sites.” Required for cross-origin iframe injection to work.

05

This extension runs on community support

IMGLAB Video Screenshot is completely free — no ads, no paywall, no data collection. Every compatibility investigation, bug fix, and new-site test takes real engineering time. If you’ve saved a frame you’re glad you kept, consider chipping in. It directly funds the next update.

One camera click. The frame is yours.

Free forever. No sign-up. Works on virtually any video site. If it saves you time, a coffee goes a long way.

Free · No account · MV3 · Works on all sites · v1.3.2

Share This Article
Leave a Comment