5年前のMacBookでGemma 4 31Bを動かし、1年分の動画をローカルAI検索可能にする実践ガイド

問題:編集者がいない、ラベルもない動画アーカイブ マサイマラでサファリロッジを運営しながらソフトウェアエンジニアとしても活動するNJ氏は、ある矛盾に直面していた。日々撮影される映像は増え続けるが、編集のボトルネックは解消されない。SNSアカウントは「コンテンツ不足」ではなく「編集時間不足」で更新が止まっていた。 初期の解決策はSaaSの組み合わせだった。Eddie AI、Higgsfield MCP、Submagic、Buffer — 月額約140ドルのスタック。しかし生成AIビデオを本物の旅行ブランドで使うリスク(TripAdvisorで致命的)と、週3〜5投稿の現実的な目標に阻まれた。 ここで著者は重要な気づきを得る。すべてのAI動画編集ツールは、映像がすでにラベル付けされている前提で設計されている。 しかし実際のアーカイブは IMG_1103.MOV が Mara june 2024 backup final FINAL に放り込まれているだけ。本当に必要なのは編集ツールではなく、検索可能なインデックスだった。 アーキテクチャ:1,400行のPythonローカルパイプライン 8つのステップで1クリップあたりのメタデータを抽出し、.description.md のサイドカーファイルとして保存する。 ffprobe — コーデック、解像度、フレームレートなどの基本メタデータを取得 exiftool — iPhone、DJI、ドローンのGPS緯度経度・高度を抽出 逆ジオコーディング — Nominatimで座標を地名に変換 ffmpeg — 5フレームを均等間隔で抜き出し、1920pxにリサイズ WhisperX — 単語レベルのアラインメント付き文字起こし + pyannote話者分離(97言語対応) insightface — 顔検出、512次元ArcFace埋め込みをSQLiteデータベースに保存 Gemma 4 31B — フレーム + 文字起こし断片 + フォルダコンテキストからYAMLフロントマターと説明文を生成 サイドカーファイルを書き出し # Gemma 4 が IMG_1103.MOV に対して生成したメタデータ lighting: bright_daylight time_of_day: midday color_palette: warm_greens people: 1 faces: [512次元埋め込みベクトル...] location: "-1.234, 35.678" description: | サファリテントのデッキに立つエリー。 背景にサバンナが広がる。カメラが 室内から室外へパンする。 このサイドカーファイル形式の利点は3つある:プレーンテキストでgrep可能、ドライブを移動しても壊れない、中央データベースが不要。 ...

May 23, 2026 · 17 min · 3374 words · Appwright