Video Content Analyzer (Batch)

Security

Analyze video content, extract keyframes, search web for references, generate Feishu Wiki reports. Supports batch directory processing with category-based publishing.

Install

openclaw skills install video-content-analyzer-batch

Video Content Analyzer

An integrated workflow for processing video content — extract keyframes, search for related information, store results in Supabase, and publish documentation to Feishu Wiki.

Skills

process_video — Single video analysis

Process a single video file: extract keyframes, search the web for related info, store in Supabase, publish analysis report to Feishu Wiki.

Parameters:

  • video_path (string, required): Path to the input video file
  • user_id (string, required): UUID of the user running the analysis
  • space_id (string, required): Feishu Wiki space ID for publishing

batch_process — Batch directory processing

Process all videos in a directory, auto-classify by filename keywords, store results in Supabase batch_jobs table, and publish categorized analysis reports to Feishu Wiki.

Parameters:

  • directory (string, required): Path to directory containing video files
  • user_id (string, required): UUID of the user running the analysis
  • space_id (string, required): Feishu Wiki space ID for publishing
  • categories (object, optional): Mapping of category names to keyword lists for auto-classification
    • Example: {"demo": ["demo", "presentation"], "tutorial": ["tut", "howto"]}
  • interval_seconds (integer, optional): Keyframe extraction interval in seconds (default: 10)

Supported video formats: .mp4, .avi, .mov, .mkv, .webm, .flv, .wmv

Batch workflow:

  1. Discover all video files in the specified directory
  2. Process each video (keyframe extraction → web search → Supabase storage)
  3. Auto-classify videos by filename keywords using the categories mapping
  4. Publish individual analysis pages to Feishu Wiki
  5. Create a category index page per category linking to all its video analyses
  6. Track progress in batch_jobs table in Supabase

Environment Variables

VariableRequiredDescription
SUPABASE_URLYesSupabase project URL
SUPABASE_SERVICE_ROLE_KEYYesSupabase service role key
GOOGLE_API_KEYYesGoogle Custom Search API key
GOOGLE_SEARCH_ENGINE_IDYesGoogle Custom Search engine ID
FEISHU_APP_IDYesFeishu app ID
FEISHU_APP_SECRETYesFeishu app secret
FRAMES_OUTPUT_DIRNoDirectory for extracted frames (default: ./extracted_frames)

CLI Usage

# Single video
python src/main.py single path/to/video.mp4 --user-id <uuid> --space-id <space-id>

# Batch processing
python src/main.py batch /path/to/videos/ --user-id <uuid> --space-id <space-id>

# Batch with categories
python src/main.py batch /path/to/videos/ \
  --user-id <uuid> \
  --space-id <space-id> \
  --categories '{"demo":["demo","presentation"],"tutorial":["tut","howto"]}'