Add video_contact_sheet – automated key-frame contact sheets #470
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements a new advanced tool for generating contact sheet thumbnails from videos using intelligent scene detection. The
video_contact_sheet
script automatically extracts scene-representative frames and composes them into professional contact sheets with metadata.Key Features
🎯 Scene-Change Detection: Uses HSV histogram difference analysis to identify distinct scenes rather than just extracting frames at fixed intervals
🚀 High Performance: Multithreaded processing achieves ~8× realtime performance on 8-core CPUs
⚙️ Flexible CLI Interface:
📊 Rich Output: JPEG contact sheets with metadata footer showing duration, resolution, and codec information
Implementation Details
advanced_tools/video_contact_sheet/
Testing
Comprehensive test suite with 9 tests covering:
All tests pass with 100% success rate using pytest.
Use Cases
Example Usage
The tool fills a gap in the repository by providing multimedia summarization capabilities not covered by existing scripts.
Fixes #425.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.