Chrome拡張機能 · MV3 · 無料 v1.3.2

IMGLAB 📷
Video Screenshot

あらゆるサイトの動画にワンクリックでカメラボタンを表示。iframeに埋め込まれた動画にも対応。JPEG・WebP・PNG形式で好きなフレームを瞬時にキャプチャ。透かしなし、登録不要、完全無料。

3
出力形式
JPG · WebP · PNG
4
ボタン位置
自由に変更可能
対応サイト数
all_urls
0
登録不要
100%無料
🎯
あらゆるサイト・あらゆる動画に対応

あらゆるウェブサイトの <video> 要素にカメラボタンが自動表示されます。動画配信サービス、ニュースサイト、個人ブログ、動画ホスティングサービスを問いません。設定不要、ホワイトリスト不要。動画があればボタンが現れます。

🖼️
クロスオリジン iframe 完全対応

多くの動画スクリーンショットツールは、別ドメインのiframeに埋め込まれた動画(現代のウェブで最も一般的な構成)で動作しません。IMGLABはChromeの拡張機能特権(all_frames: true)を使ってクロスオリジンiframeに直接注入し、真のフレームをキャプチャします。

キーボードショートカット

デフォルトは Ctrl+G。設定から好きなキーの組み合わせに変更可能。スマートな動画ピッカーが最適な動画を自動選択します。

📐
ネイティブ解像度でキャプチャ

Canvasキャプチャは動画のネイティブ画素数で取得します。表示サイズではなく元のストリームと同じクオリティのスクリーンショットが保存されます。

🎨
JPEG · WebP · PNG

出力形式を選択できます。JPEG/WebPは品質(10〜100)を調整可能。PNGはロスレス。すべてわかりやすいファイル名で即座に保存。

📁
自動ファイル名生成

ファイルは IMGLAB-ページタイトル-HH-MM-SS.jpg の形式で自動命名されます。クロスオリジンiframe内からでも、上位ページのタイトルを取得して使用します。

IMGLAB Video Screenshot 設定パネル
imglab-video-screenshot-setting.webp
設定ポップアップ

シンプルで快適な設定画面

ポップアップはすっきりとした2タブ構成(設定・ブロックリスト)。出力形式・品質・ボタン位置・最小動画サイズ・ショートカットキーをすべて一か所で設定できます。設定は chrome.storage.sync 経由で開いているすべてのタブに即座に同期。ページの再読み込みは不要です。

  • フォーマット切替:JPG / WebP / PNG
  • 品質スライダー:10〜100(PNGは自動グレーアウト)
  • ボタン位置:4隅、下部はプレイヤーバー分オフセット
  • クリックで録音するカスタムショートカット設定
  • 最小動画サイズフィルター — 小さいサムネイルを無視
IMGLAB Video Screenshot ブロックリスト
imglab-video-screensho-blocklist.webp
ブロックリストタブ

ドメイン別ブロック — 自分でコントロール

一部のサイトはサードパーティスクリプトが動画プレイヤーに要素を注入すると正常に動作しません。ブロックリストを使えば特定のドメイン(サブドメインも含む)で拡張機能を完全に無効化できます。問題が確認されたサイトはあらかじめ登録済み。よく使うSNSもワンクリックで追加できます。

  • 現在のサイトをワンクリックでブロック
  • 主要SNSの候補チップを表示
  • 手動入力も可能 — https://・www.・パスを自動除去
  • ドメイン+全サブドメインを自動でブロック
  • いつでも削除可能 — 変更は即座に反映
2段階キャプチャエンジン — 同一オリジン・クロスオリジン両対応
1
Canvasキャプチャ(同一オリジンの動画)

HTML5 Canvasに動画フレームをネイティブ解像度で描画します。高速でピクセルパーフェクト。ストリームに焼き込まれた字幕も含め現在のフレームを正確にキャプチャします。動画ソースが同一オリジンからアクセス可能な場合に使用されます。

2
タブキャプチャフォールバック(クロスオリジンの動画)

Canvasがセキュリティエラーをスロー(別ドメインの動画 — 動画配信サイトで最も一般的な構成)した場合、自動的に chrome.tabs.captureVisibleTab にフォールバックします。取得したタブ全体のスクリーンショットを getBoundingClientRect() × デバイスピクセル比で動画要素の範囲に正確にクロップ。動画がiframe内にある場合はiframeのオフセットも考慮します。

3
スマートダウンロードリレー

サンドボックス化されたiframeは直接のダウンロードをサイレントにブロックします。IMGLABはこれを検出し、postMessage 経由でトップフレームにダウンロードを中継します。BlobURL + anchorクリックで確実に動作。ファイルは IMGLAB-ページタイトル-HH-MM-SS.jpg の正しいファイル名で届きます — 「download.jpg」になることはありません。

⌨️ スマートキーボードショートカット
🎯
スマート動画ピッカー

Ctrl+G(またはカスタムのキー)を押すと、画面上の最適な動画を自動的に選択します。再生中の動画を優先し、次にビューポート中央に最も近い動画を選びます。

📦
iframe内の動画にも対応

メインページに動画が見つからない場合、ショートカットは postMessage 経由ですべての子iframeにブロードキャストされます。動画を持つiframeがキャプチャして応答 — 警告なしでスムーズに動作します。

🎛️
完全カスタマイズ可能

設定のショートカット表示をクリックして録音を開始。Ctrl・Alt・Shiftを組み合わせた任意のキーコンボを設定できます。ワンクリックでデフォルトにリセット。

カメラボタンの動作

カメラボタンは対象動画にホバーすると表示されます。再生中は自動的にフェードアウトし、一時停止すると再表示 — 視聴の邪魔になりません。

  • ホバーで表示 — 再生中は自動的に非表示
  • 一時停止すると再表示
  • 4つの表示位置:左上・右上・左下・右下
  • 下部位置はプレイヤーコントロールバー分(54px)オフセット
  • 位置変更はリアルタイム反映 — ページ更新不要
  • 最小サイズフィルターで小さいサムネイルや広告プレイヤーをスキップ
  • 1.5秒ごとのポーリング + MutationObserverで動的追加の動画も検出
📷
📷
📷
📷
▶ 動画プレイヤー

右上がデフォルト · 4か所すべて選択可能

デフォルトで4サイトがブロックされている理由

ほとんどのサイトではIMGLABは問題なく動作します。しかし一部の大規模プラットフォームはインフラレベルの設計により、互換性の確保が「困難」ではなく「不可能」なケースがあります。私たちは徹底的に調査を行い、動作しないふりをするよりも正直にブロックする判断をしました。

🚫 facebook.com
FacebookのプレイヤーはVideo要素へのすべてのクリックを独自のクリックハンドラーで横取りし、「シネマモード」ビューアーを開いてしまいます。私たちのボタンは物理的にクリックできません — Facebookがイベントを先に奪うからです。ユーザーを自社エコシステムに留めるための意図的な仕様です。修正不可能。
🚫 tiktok.com
TikTokは動画コンテナへのDOM変更を監視する MutationObserver 製の改ざん防止システムを稼働させています。私たちのボタンが追加された瞬間、TikTokの内部状態がリセットされ、動画が一時停止・フリーズします。3回の独立したデバッグセッションで徹底調査し、他のすべての原因を除外しました。フリーズはボタン要素がDOMに存在することで引き起こされます。TikTokの改ざん防止コードをリバースエンジニアリングしない限り修正不可能。
🚫 weibo.com
WeiboのビデオプレイヤーはフルUI(進捗バー・タイトル・コントロール)のオーバーレイを私たちがどう工夫しても超えられないz-indexで動画の上に表示しています。タブキャプチャフォールバックは動画の映像ではなくコントロールUIをキャプチャしてしまいます。ユーザーにとって意味のないスクリーンショットになります。実用的な利用価値なし。
🚫 reddit.com
Redditのビデオプレイヤーは、私たちの拡張機能が検出できる方法でネイティブHTML <video> 要素を使用していません。コンテンツスクリプトがスキャンしてもRedditのプレイヤーアーキテクチャ上、何も見つかりません — ボタンは表示されず、ショートカットは「動画なし」を返します。混乱を避けるためにブロックしています。video要素が検出できない。
💡 これらのブロックはいつでもブロックリストから削除できます。 将来これらのプラットフォームのアップデートで互換性が確保できるようになった場合は、デフォルトリストから外します。設定は常にあなたが管理できます。
動作確認済みサイト一覧
サイト状態備考
facebook.com 🚫 ブロック済 デフォルトブロック — クリックがFBプレイヤーに横取りされる
tiktok.com 🚫 ブロック済 デフォルトブロック — 改ざん防止機能が動画をフリーズさせる
weibo.com 🚫 ブロック済 デフォルトブロック — 動画ではなくオーバーレイUIがキャプチャされる
reddit.com 🚫 ブロック済 デフォルトブロック — <video>要素が検出できない
私たちがコントロールできない制限

正直にお伝えします。以下は実際の制限事項です。そのほとんどはWebプラットフォームのセキュリティ境界、またはプラットフォーム固有の設計によるものであり、私たちの側でコントロールできるものではありません。

🎭
タブキャプチャ時にオーバーレイが映り込む

クロスオリジンフォールバックを使用する場合、タブ全体を取得してから動画エリアにクロップします。動画の上に重なるプレイヤーUI(コントロールバー・バナー・ローディングアイコンなど)がスクリーンショットに含まれる場合があります。これは captureVisibleTab の仕様上の根本的な制約です。オーバーレイを透過してRAW動画ピクセルにアクセスする手段は拡張機能には与えられていません。

🔒
DRM保護コンテンツ

Widevine・PlayReadyなどのDRMで保護された動画は、拡張機能がアクセスできない保護されたコンポジットレイヤーで描画されます。Canvasキャプチャは黒いフレームを返します。これはOS/GPUドライバーレベルで強制されている仕様であり、いかなるブラウザ拡張機能もDRMを回避することはできません。黒いスクリーンショットが保存された場合、その動画はDRM保護されています。

📱
フルスクリーン時のトースト通知

「スクリーンショットを保存しました」通知は、フルスクリーン時も正しい要素に追加されます。ただし、クロスオリジンiframeプレイヤーを持つ一部のサイトでは、DevToolsが閉じているときにChromeがフルスクリーンiframe内の再描画を抑制するため、通知が表示されない場合があります。ファイルはダウンロードフォルダに正常に保存されています。

🌐
すべてのサイトでの動作は保証できません

ウェブは広大で、すべてのサイトが独自の方法で動画プレイヤーを実装しています。大多数の動画サイトでは動作しますが、すべてを検証することはできません。対応してほしいサイトがある場合は、寄付メッセージでお知らせください — 要望の多いサイトから優先的に対応します。今後の開発継続は皆さんのサポート次第です。

🚀 インストール方法 — 60秒で完了
1
拡張機能ファイルをダウンロード・解凍

Chrome ウェブストアまたはダウンロードページからzipを取得。永続的なフォルダーに解凍してください — 拡張機能がインストールされている間はフォルダーを削除しないでください。

2
Chromeでデベロッパーモードを有効にする

chrome://extensions/ を開き、右上のデベロッパーモードをオン。次に「パッケージ化されていない拡張機能を読み込む」をクリックして解凍したフォルダーを選択します。

3
「すべてのサイトで許可」を設定

ツールバーの拡張機能アイコン(🧩)から⋮をクリック → 「このサイトのデータの読み取りと変更」→ すべてのサイト。クロスオリジンiframe対応に必要な設定です。

4
キャプチャ開始

任意の動画にホバーしてカメラボタンをクリック。またはページ上のどこでも Ctrl+G を押すだけ。それだけです。

無料 · オープン · コミュニティサポート

この拡張機能は
皆さんのサポートで生きています

IMGLAB Video Screenshotは完全無料 — 広告なし、ペイウォールなし、データ収集なし。開発・テスト・互換性調査には本当に時間がかかります。すべての寄付が次のアップデートに直結します。

🧪
新しい動画配信サイトやプラットフォームの互換性テスト
🐛
報告されたサイトのエッジケースを調査・修正
🌱
オーバーレイボタンモード・追加形式対応・Firefox/Edgeポートなど新機能開発

今後さらに多くのサイトに対応できるかどうかは、正直に言うと皆さんのサポート次第です。役に立つスクリーンショットが撮れたと感じたら — コーヒー一杯分の応援をぜひ。

一回払い · アカウント不要 · 金額は自由 · 30秒で完了

❤️ IMGLAB 製作
Ko-fi  ·  Buy Me a Coffee  ·  [email protected]