本文へ移動
cccskills
無料GitHub で公開

video-keyframe-analyzer

動画からキーフレームを抽出してコスト効率的に分析するスキル。フレーム差分検出と画質最適化により、Claude APIコストを約93%削減する。`/video-keyframe-analyzer <動画パス>` で使用。

インストール方法を見る

含まれるファイル(4)

  • SKILL.md7.6 KB
  • extract_keyframes.py31.6 KB
  • README.md11.1 KB
  • requirements.txt118 B

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Video Keyframe Analyzer

あなたは、動画からキーフレームを抽出してコスト効率的に分析を行う専門家です。

あなたの役割

動画を全フレーム読み込むと高コストになるため、差分検出により重要なフレームのみを抽出し、画質を最適化してClaude APIのコストを約93%削減します。

作業フロー

1. ユーザーからの動画パス取得

ユーザーが動画ファイルのパスを提供したら、以下を確認:

  • 動画ファイルが存在するか
  • ファイル形式(mp4, mov, aviなど)

2. 依存関係の確認

初回実行時、以下のパッケージがインストールされているか確認:

pip list | grep -E "opencv-python|pillow|numpy"

インストールされていない場合:

pip install -r ~/.claude/skills/video-keyframe-analyzer/requirements.txt

3. キーフレーム抽出の実行

以下のコマンドでキーフレームを抽出:

python ~/.claude/skills/video-keyframe-analyzer/extract_keyframes.py <video_path> [options]

デフォルト設定:

  • --threshold 30: 差分閾値(変化が大きいフレームを抽出)
  • --quality 50: JPEG品質(50%)
  • --max-frames 20: 最大20フレームまで
  • --resize-ratio 0.5: 画像サイズを半分に
  • --output-dir /tmp/claude-code-video: 出力先

パラメータ調整の目安:

状況推奨設定
画面遷移が激しい(ゲーム、アニメーション)--threshold 40-50
画面遷移が少ない(UI操作、スライド)--threshold 15-25
詳細な分析が必要--quality 70-80 --resize-ratio 0.7
コストを最優先--quality 30-40 --max-frames 10

4. 抽出されたキーフレームの確認

ls -lh /tmp/claude-code-video/

各キーフレームのファイルサイズとフレーム数を確認します。

5. キーフレームを読み込んで分析

Read toolを使って各キーフレームを読み込み、分析します:

# 例
Read /tmp/claude-code-video/keyframe_001.jpg
Read /tmp/claude-code-video/keyframe_002.jpg
...

分析観点:

  • 画面遷移のタイミング
  • UIの変化点
  • バグや問題のある箇所
  • デザインとの差異

6. 分析結果の報告

以下の形式でユーザーに報告:

## 動画分析結果

### 抽出情報
- 動画長: X秒
- 総フレーム数: X枚
- キーフレーム数: X枚
- 削減率: X%

### 画面遷移の流れ
1. [フレーム1] 初期画面
2. [フレーム2] ボタンタップ → ローディング表示
3. [フレーム3] 次の画面に遷移
...

### 発見した問題点(あれば)
- フレームXで白い画面が表示されている
- フレームYでレイアウトが崩れている
...

### 推奨事項
- ...

7. クリーンアップ(オプション)

分析完了後、一時ファイルを削除する場合:

rm -rf /tmp/claude-code-video/

ユースケース別ガイド

ユースケース1: 画面遷移のバグ修正

目的: Navigation Composeの画面遷移で白い画面が一瞬表示されるバグを特定

手順:
1. キーフレーム抽出(デフォルト設定)
2. 各フレームを時系列で確認
3. 白い画面が表示されているフレームを特定
4. その前後のフレームでコードの問題を推測
5. 修正方法を提案

ユースケース2: UIテスト結果の検証

目的: E2Eテストの実行結果が期待通りか確認

手順:
1. キーフレーム抽出
2. 期待される画面遷移と照合
3. 各ステップでの画面状態を確認
4. 差異があれば報告

ユースケース3: デザイン実装の確認

目的: デザイナーの参考動画と現在の実装を比較

手順:
1. 参考動画と実装動画の両方からキーフレーム抽出
2. 対応するフレームを並べて比較
3. 色、レイアウト、アニメーションの差分を報告
4. 修正が必要な箇所をリストアップ

パラメータ調整のコツ

threshold(差分閾値)の調整

高すぎる場合の症状:

  • 抽出されるフレームが少なすぎる
  • 重要な画面遷移が抜けている

対処: --threshold を小さくする(例: 20-25)

低すぎる場合の症状:

  • 抽出されるフレームが多すぎる
  • ほとんど変化がないフレームも含まれる

対処: --threshold を大きくする(例: 40-50)

quality(画質)の調整

用途別推奨値:

  • テキストが読めればOK: 30-40
  • 標準的な分析: 50-60
  • 詳細な色・デザイン確認: 70-80
  • 高品質が必要: 85-95

エラーハンドリング

エラー: "Failed to open video"

原因: 動画ファイルが見つからない、または対応していない形式

対処:

  1. ファイルパスを確認
  2. ファイル形式を確認(mp4, mov, aviが推奨)
  3. ファイルが破損していないか確認

エラー: "Required package not found"

原因: 必要なPythonパッケージがインストールされていない

対処:

pip install opencv-python pillow numpy

警告: "Keyframes extracted: 0"

原因: threshold が高すぎて、変化が検出されない

対処: --threshold を小さくして再実行

コスト削減の効果

計算例(5秒、30fps の動画)

全フレーム読み込み:

  • フレーム数: 150枚
  • 1フレーム約3円(Claude API画像料金)
  • 合計: 約450円

キーフレーム抽出後:

  • キーフレーム数: 8-10枚
  • 画質・サイズ最適化済み
  • 1フレーム約2.4-3円
  • 合計: 約24-30円

削減率: 93%

注意事項

動画の長さ制限

このスキルは10分以内の動画に最適化されています。

開発用途(画面操作録画、UIテスト、デモ動画など)を想定しており、10分を超える動画は処理時間が長くなります。

推奨設定:

動画の長さ推奨max-frames処理時間目安用途
〜10秒15-20数秒画面遷移バグ検証
10秒〜1分20-3020-60秒UIテスト結果確認
1-5分30-401-5分E2Eテスト録画
5-10分40-505-10分長時間操作録画

10分以上の動画の場合:

  • 必要な部分だけトリミングしてから処理
  • または動画を分割して処理

その他の注意事項

  1. 一時ファイル: /tmp/claude-code-video/ に保存されるため、ディスク容量に注意
  2. 動画形式: mp4, mov, avi 推奨。他の形式は事前変換が必要な場合あり
  3. 処理時間: 動画の長さに比例(総フレーム数 / 100 秒が目安)

今後の拡張予定

  • パラメータ設定UI(AskUserQuestionで対話的に調整)
  • プレビュー機能(抽出前にサンプル確認)
  • バッチ処理(複数動画を一度に処理)
  • MCP Server化(リアルタイムプレビュー)

関連スキル

  • figma-to-compose: UIデザイン実装との比較に有用
  • android-test-runner: テスト結果動画の分析に有用

作成者: 石原正也 作成日: 2026-01-22 バージョン: v0.1 (Prototype)

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

android-api-client

無料日本語概要

Retrofit + OkHttpを使用したAPIクライアント実装のベストプラクティスを提供する。 「API実装」「APIクライアント」「Retrofit」「OkHttp」「ネットワーク」と言われたら使う。

xtone/ai_development_tools32026年10月7日 更新

android-architecture

無料日本語概要

Androidプロジェクトのアーキテクチャ設計を支援。プロジェクト特性に応じてMVI/MVVM/シンプルComposeから最適なパターンを提案し、パッケージ構造の設計と既存プロジェクトの分析を行う。

xtone/ai_development_tools32026年10月7日 更新

android-crash-analyzer

無料日本語概要

Firebase Crashlyticsのスタックトレースを解析し、トリアージ分類→根本原因分析→修正提案を出力するスキル。/crash-analyze コマンド、クラッシュ解析、スタックトレース分析、ANR分析、Crashlytics、クラッシュレポート、またはFirebase crashに関連するリクエストで使用される。クラッシュ対応のワークフローを標準化し、対応品質と速度を向上させる。ANR/Non-fatal/Fatal全タイプ対応。

xtone/ai_development_tools32026年10月7日 更新

Android data layer implementation guide. Provides comprehensive patterns for Room Database (Entity, DAO, Migration), DataStore (Preferences), Repository layer design, and common pitfalls. Use when implementing local data storage, cache strategies, or data source integration in Android projects.

日本語の概要は準備中です。原文の説明を表示しています。

xtone/ai_development_tools32026年10月7日 更新

android-test-runner

無料日本語概要

重要: ユーザーがAndroidテスト実行をリクエストした場合、常にこのスキルを最初に使用してください。以下の場合に必ず使用: run TestName, execute test, テストを実行, 結果を分析, run all tests, analyze test failures, fix failing tests、または Android unit test, instrumentation test, Gradle test コマンドに関連する任意のリクエスト。./gradlew test や Bash コマンドを直接使用しないでください - 常にこのスキルに委譲してください。Multi-variantプロジェクト、JAVA_HOME セットアップ、一般的なテストパターンに対応しています。

xtone/ai_development_tools32026年10月7日 更新

android-ui-guidelines

無料日本語概要

Jetpack ComposeでUIを実装する時に参照するコーディングガイドライン。 「Android UI」「Compose」「Jetpack」「画面実装」「UIコンポーネント」「レイアウト」と言われたら使う。 Android/Kotlin UI実装のベストプラクティス、アンチパターン、実装パターンを提供する。

xtone/ai_development_tools32026年10月7日 更新

xtone のスキルをすべて見る

このスキルの問題を報告する