a3e735cc7a
11 production pipelines, 47 tools, 124 agent skills. Supports cloud APIs (fal.ai, OpenAI, ElevenLabs, Suno, HeyGen, Runway) and free local providers (diffusers, Piper TTS, WAN 2.1, Hunyuan, CogVideo). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
5.2 KiB
5.2 KiB
Video Understanding Usage for OpenMontage
Sources: OpenMontage video_understand tool implementation, CLIP/BLIP2/LLaVA model documentation, OpenCV image quality metrics
Quick Reference Card
DEFAULT MODE: describe — generates captions for frames
FOR REVIEW: quality — assesses blur, brightness, contrast
FOR Q&A: qa mode with a query — "Is the speaker visible?" "Is the text readable?"
DEFAULT MODEL: clip (fastest, good for classification)
FOR DETAIL: blip2 or llava (slower, richer descriptions)
MAX FRAMES: 5 default for video — sample strategically, not exhaustively
When to Use video_understand
- Visual QA during review — check rendered output quality before delivering
- Footage analysis — understand what's in user-provided footage before planning
- Highlight extraction — identify the most visually interesting frames
- Quality gating — programmatic check for blur, exposure, scene coherence
- Scene classification — categorize footage by content type
- Asset validation — verify generated images match the intended scene description
Mode Selection
| Mode | What It Does | When to Use |
|---|---|---|
describe |
Generates a text description of the frame | Understanding footage content, logging |
qa |
Answers a specific question about the frame | Targeted checks ("Is text readable?", "Is face visible?") |
quality |
Measures blur, brightness, contrast numerically | Automated quality gating, comparing takes |
classify |
Categorizes the scene type | Sorting footage, pipeline routing |
Quality Mode Metrics
| Metric | What It Measures | Bad | Good |
|---|---|---|---|
blur_score |
Laplacian variance | Below 100 = blurry | Above 500 = sharp |
brightness |
Mean pixel value (0-255) | Below 50 = too dark, above 200 = overexposed | 50-200 |
contrast |
Pixel standard deviation | Below 30 = flat/washed out | Above 80 = good contrast |
Model Selection
| Model | Speed | Capabilities | Best For |
|---|---|---|---|
clip |
Fast | Classification, similarity matching | Quick scene categorization, batch processing |
blip2 |
Medium | Detailed captions, visual QA | Understanding complex scenes, answering questions |
llava |
Slow | Most detailed understanding, reasoning | Deep analysis, subjective quality assessment |
Model Selection Rules
- Use
clipfor batch operations and classification tasks - Use
blip2for describe and qa modes when detail matters - Use
llavaonly when you need the most thorough understanding
Frame Selection for Video
- Default samples
max_frames(5) evenly across the video - Use
frame_indicesto target specific frames (e.g., check quality at specific timestamps) - For quality review, sample the first frame, middle frame, and last frame minimum
Common Workflows
1. Pre-Edit Footage Review
video_understand (describe, 10 frames) → inform scene_plan
Analyze user-provided footage before planning cuts or edits. Use blip2 for detailed descriptions that inform the scene plan.
2. Post-Render Quality Gate
video_understand (quality) → pass/fail → re-render if needed
Run after composing the final video. Fail if any frame has blur_score < 100, brightness outside 50-200, or contrast < 30.
3. Highlight Selection
video_understand (describe, 20 frames) → rank by visual interest → select clips
Sample many frames, describe each, then select the most visually compelling segments for a montage or trailer.
4. Asset Validation
video_understand (qa, "Does this match: [scene description]?") → confirm or regenerate
After generating an image or video clip, verify it matches the intended scene description before proceeding.
5. Talking-Head Analysis
video_understand (qa, "Is the speaker's face clearly visible?") → face_enhance if needed
Check face visibility and framing before applying lip-sync or face restoration tools.
Quality Checklist
- Descriptions accurately match what's in the frame
- Quality scores correlate with visual inspection (manually spot-check)
- QA answers are consistent across similar frames
- Classification categories are stable across adjacent frames
- No false positives in quality gating (good frames passing, bad frames failing)
Applying to OpenMontage
When using the video_understand tool:
- Use
qualitymode as a post-render gate in the compose stage — reject outputs below quality thresholds - Use
describemode to analyze user-provided footage at the start of the talking-head pipeline - For batch quality checks, use
clipmodel (fastest) — switch toblip2only for detailed review - Sample at least 3 frames for quality assessment — beginning, middle, end
- Quality thresholds for passing: blur_score > 100, brightness 50-200, contrast > 30
- Use
qamode to validate generated assets: "Does this image show [expected content]?" - In the review stage, combine video_understand quality data with the reviewer skill's rubric
- Do NOT run video_understand on every frame of a long video — sample strategically