Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works

Random project

VideoMiner

動画ビュアー

View on GitHub

Anyone may press Interesting, signed in or not. It helps others find this project.

Member rating

No ratings yet.

Sign in to rate this project.

README

# VideoMiner

VideoMiner は、動画ファイルをフォルダ単位で探しやすく、軽く再生するための Windows 用ビューアです。

通常のメディアプレイヤーのように 1 ファイルずつ開くのではなく、開いた動画と同じフォルダ内のファイルをまとめて作業対象として扱います。前後の動画へすぐ移動でき、サムネイル一覧から目的の動画を見つけられます。

過去に開いたフォルダはフォルダ閲覧履歴からすぐ戻れます。履歴にも代表サムネイルが表示されるため、NAS 上の素材フォルダや日付別フォルダを行き来しながら動画を探す作業に向いています。

再生は軽さを重視しています。遅い CPU、高い解像度、NAS 上の動画、4K や 60fps の動画でも、できるだけコマ落ちなく確認できるように、D3D11 と FFmpeg を使って再生します。

動画の見たい部分を確認しやすいように、表示の拡大縮小、拡大中のドラッグ移動、シークバー目盛りの拡大縮小、チャプター区間ループにも対応しています。細部の確認、同じ場面の繰り返し再生、フォルダ内の連続確認を軽快に行うためのアプリです。

ダウンロード

最新版は GitHub Releases からダウンロードしてください。

リリースには、用途に応じて複数のファイルがあります。

ファイル 内容 使い方
VideoMiner_Setup.exe インストーラ本体 通常はこちらを実行してインストールします。
VideoMiner_Setup.zip インストーラを ZIP にしたもの ブラウザや環境によって .exe を直接扱いにくい場合はこちらを展開して使います。
VideoMiner_Portable.zip インストール不要版 任意のフォルダへ展開し、VideoMiner.exe を直接起動します。

どの形式にも、実行に必要な FFmpeg DLL と GPL-3.0 のライセンス文書を含める想定です。

主な特徴

  • 開いたファイルと同じフォルダ内の動画をまとめて扱い、前後動画へ素早く移動
  • 同一フォルダ内動画のサムネイル一覧表示
  • サムネイル一覧からクリックで選択し、ダブルクリックまたは Enter で動画を切り替え
  • サムネイル一覧 1 行目にフォルダ閲覧履歴を表示
  • フォルダ閲覧履歴から、再生を切り替えずに別フォルダのサムネイル一覧へ移動
  • よく選ぶフォルダほど履歴の上位に残るフォルダ閲覧履歴
  • サムネイル一覧のディスクキャッシュ、ホイールスクロール、キーボード選択、右下ボタン/中央ボタン+ホイール拡大縮小、ホバー中の音なしプレビュー
  • D3D11 と FFmpeg による軽快な動画再生
  • 4K や 60fps、高解像度、NAS 上の動画でもコマ落ちを抑えて再生
  • シーク直後や短い動画の開始直後に古いフレームや戻りフレームを表示しにくい安定したデコード処理
  • ループ再生や再生中シークで、できるだけ開き直さず素早く再開
  • 再生終了時の動作を Stop / Loop / Next から切り替え
  • 表示の拡大縮小と、拡大中のドラッグ移動
  • シークバー目盛りのホイール拡大/縮小とドラッグによる表示範囲移動
  • チャプター区間を使ったループ再生
  • 動画上に重ねて表示される再生、シーク、音量、ミュート操作
  • ファイルのドラッグ&ドロップ対応
  • 透過情報を持つ .mov の再生に対応し、透明部分は市松模様で確認可能
  • MP4 の display matrix / rotate metadata を読んで、縦長ショート動画などを正しい向きで表示
  • 表示だけを 90 度ずつ手動回転し、向きが合わない動画を確認可能
  • 表示だけを左右反転し、鏡像の動画を確認可能
  • 再生速度を 1.0x / 1.5x / 2.0x で切り替え可能
  • TV 放送向けの文字見切れ確認用に、90% セーフエリア枠を表示可能
  • 全画面表示
  • 画面左右端のオーバーレイから前後動画へ移動
  • マウスジェスチャーで動画を一時的に隠すボスが来たモード
  • 前回開いたファイルやウィンドウ位置の保存

基本操作

操作 内容
Ctrl+O ファイルを開く
Space 再生/停止
Left / Right 前後の動画へ移動
PageUp / PageDown 前後の動画へ移動
Ctrl+Left / Ctrl+Right 前後のチャプター、先頭、終了フレームへ移動
Home / End 先頭/末尾付近へ移動
R 表示だけを 90 度ずつ回転
H 表示だけを左右反転
S 再生速度を 1.0x / 1.5x / 2.0x で切り替え
Ctrl+Up / Ctrl+Down 明るさを一時的に変更
Shift+Up / Shift+Down コントラストを一時的に変更
Up / Down 音量を変更
M ミュート切り替え
F1 ヘルプ兼用画面を表示
ヘルプ画面中の Up / Down ヘルプページを切り替え
ヘルプ画面中の PageUp / PageDown ヘルプページを切り替え
F11 全画面切り替え
Esc 全画面解除
G / Ctrl+G 90% セーフエリア確認枠の表示/非表示
Tab サムネイル一覧の表示/非表示
動画面クリック 再生/停止
動画面ダブルクリック 全画面切り替え
動画面右クリック サムネイル一覧の表示/非表示
シークバー上で右クリック カーソル位置の手動チャプターを追加/削除
マウスホイール 動画表示部分の拡大/縮小
メイン画面で右ボタンを押しながらマウスホイール 1 フレーム目安で前後へ移動
シークバー本体上でマウスホイール 1 フレーム目安で前後へ移動
シークバー目盛り上でマウスホイール 目盛りの表示範囲を拡大/縮小
シークバー目盛りを左ドラッグ 拡大中の目盛り表示範囲を左右へ移動
左ドラッグ 拡大中の表示位置移動
画面左右端クリック 前後の動画へ移動
サムネイルクリック その動画を選択
サムネイルダブルクリック その動画へ切り替え
フォルダ閲覧履歴クリック サムネイル一覧モードのまま、そのフォルダ内動画のサムネイル一覧へ切り替え
フォルダ閲覧履歴選択中に Del 履歴から削除。実フォルダやファイルは削除しない
サムネイル一覧で F5 フォルダ閲覧履歴と選択中フォルダのサムネイル一覧を再読み込み
サムネイル一覧で矢印キー 選択中タイルを移動
サムネイル一覧で Enter 選択中の動画へ切り替え
サムネイル一覧で右クリック サムネイル一覧を閉じる
サムネイル一覧でマウスホイール 一覧を縦スクロール
サムネイル一覧右下の + / - サムネイルを拡大/縮小
サムネイル一覧で中央ボタンを押しながらマウスホイール サムネイルを拡大/縮小
サムネイル一覧でホバー 操作対象のタイルを強調表示し、少し待つと音なしプレビューを表示

メイン画面では通常のマウスホイールは動画表示の拡大/縮小に使います。細かくフレームを確認したい場合は、右ボタンを押したままホイールを回すか、シークバー本体上でホイールを回します。

補助的なチェック機能

VideoMiner には、動画の確認作業中に気になる位置を記録し、あとから戻りやすくするためのチェック機能もあります。

手動チャプター

  • 下側ツールグループの + で、現在位置に手動チャプターを追加できます。
  • シークバー上の右クリックで、カーソル位置の手動チャプターを追加/削除できます。
  • 下側ツールグループの - で、現在位置に近い手動チャプターを削除できます。
  • 手動チャプターはシークバー上に緑のマーカーとして表示されます。
  • 手動チャプターは動画ファイルごとに保存され、同じ動画を開いた時に復元されます。

自動チェック

  • 下側ツールグループの Check を有効にすると、再生中に映像と音声を軽量チェックします。
  • 検知した候補はシークバー上にマーカーとして表示されます。
  • 黄色は注意、赤は危険度が高い候補です。
  • 自動チェックのマーカーは一時的な候補扱いで、保存対象にはしていません。

現在の自動チェックでは、以下の候補を検知します。

  • 黒フレーム
    • フレーム四隅の暗さから、無表示に近い区間を検知します。
    • 短い候補は黄色、長めの候補や終端付近の候補は赤になります。
  • 無音区間
    • 音声トラックの無音が続く区間を検知します。
    • 動画冒頭の無音は、画面録画などで自然に発生しやすいため黄色に抑えます。
  • 左右チャンネル異常
    • 左だけ無音、右だけ無音、左右の音量差が極端な区間を検知します。
  • フレーム差分異常
    • 前後のフレームは似ているのに、1 フレームだけ大きく違う候補を検知します。
    • 通常のシーン切替では反応しにくいよう、黄色候補として控えめに扱います。
  • 音量急変
    • 前後の音声ブロックと比べて、音量が急に大きくなる、または小さくなる候補を検知します。
  • クリッピング
    • 音声ピークが上限付近に張り付いた、音割れ候補を赤で検知します。

チャプター移動とループ

  • Ctrl+Left / Ctrl+Right で、前後のチャプター、先頭フレーム、終了フレームへ移動できます。
  • 再生終了時動作を Loop にすると、現在位置を含むチャプター区間を繰り返し再生します。
  • 例: 先頭 - A - B - 終了 の構成で A と B の間から再生した場合、B まで再生したあと A に戻ります。

外部更新の自動再読み込み

  • 開いている動画ファイルのフォルダを監視し、現在の動画が外部アプリで更新された場合に検知します。
  • 動画編集アプリなどが上書き出力中に何度もファイルを更新しても、更新が落ち着くまで待ってから 1 回だけ処理します。
  • 更新が確定すると、現在開いている動画を読み込み直し、先頭フレームを表示します。
  • Check の ON/OFF や音量などの設定状態は維持します。
  • 自動チェックで付いた一時的な警告チャプターは、再読み込み時に削除されます。
  • 手動チャプターは動画ファイルごとの保存状態から復元されます。

開発状況

サムネイル一覧とフォルダ閲覧履歴は、現時点の完成形に近い状態として扱います。

フォルダ閲覧履歴は最大 16 件を保存し、サムネイル一覧の 1 行目に表示します。履歴タイルにはフォルダ名と代表サムネイルを表示し、選択されたフォルダほど履歴上位へ移動します。ネットワークフォルダなどが一時的に存在しない場合でも、自動削除はしません。

動作環境

  • Windows 64bit

設定ファイル

VideoMiner は、ユーザー設定を次の場所に保存します。

text
マイドキュメント\VideoMiner\VideoMiner.ini

サムネイルサイズ、フォルダ閲覧履歴、前回開いたファイルなどは マイドキュメント\VideoMiner\VideoMiner.ini に保存され、次回起動時にも復元されます。

サムネイルのディスクキャッシュは マイドキュメント\VideoMiner\ThumbnailCache に PNG 形式で保存されます。

回転 metadata の確認用に、[VideoMiner] VideoRotationOverride で表示回転を上書きできます。 通常は auto のままで、必要に応じて ignore / force90 / force180 / force270 を指定します。

アンインストールしても設定ファイルは残る場合があります。不要な場合は、このフォルダを手動で削除してください。

ライセンス

VideoMiner は GNU General Public License version 3 に従って配布します。

GPL-3.0 の条件に従う限り、商用利用や営利目的での利用も可能です。 改変版の配布や再配布を行う場合は、GPL-3.0 の条件を守ってください。

動画の読み込みとデコードには FFmpeg を使用します。FFmpeg は VideoMiner 本体とは別の著作物であり、FFmpeg 側のライセンス条件が適用されます。

開発メモ

  • 作業再開時に見る課題は note.md に記載しています。
  • 日付ごとの実装履歴と調査記録は HISTORY.md に記載しています。