- Create comprehensive agents.md with uv workflow instructions
- Include environment setup, dependency management, and testing guidelines
- Provide development patterns for AI agents working with this project
- Cover troubleshooting, best practices, and example workflows
- Document project structure and key dependencies
- Remove incorrect padding that was causing massive file sizes
- Fix progressive accumulation to show proper scan line build-up over time
- Each frame now shows accumulated scan lines up to that point with proper padding
- Video dimensions correctly set to final size with black padding for progressive frames
- Tested successfully: 101 frames at 101x2456 resolution = 1.1MB file size
- Duration now correctly matches frame count / fps (3.37 seconds for 101 frames at 30fps)
- Add --timestamp / --ts flag to embed frame count on bottom left corner
- Implement add_timestamp_overlay() function with large, visible text
- Yellow text on black background for good visibility
- Shows 'Frame: X/Y' format with current and total frame counts
- Works with both column and row video modes
- Applied after rotation for proper positioning
- Update documentation with timestamp examples and parameter descriptions
- Tested successfully with sample video files
- Add --video flag to generate MJPEG AVI files showing scan line accumulation over time
- Add --fps parameter to control output video frame rate (default: 30.0)
- Implement extract_column_strip_video() and extract_row_strip_video() functions
- Each video frame shows progressive build-up of strip photography effect
- Video dimensions automatically calculated based on input video and scan line count
- Row mode videos rotated CCW 90° to match image mode orientation
- Add validation for video mode arguments and proper file extensions
- Update documentation with video mode examples and features
- Tested successfully with sample video files
- Add --timeline flag to overlay frame numbers as ruler at bottom
- Add --start and --end parameters to process video segments
- Timeline shows evenly-spaced frame numbers with tick marks
- Timeline always horizontal from left to right at bottom
- Segment processing maintains actual frame numbers in timeline
- Update all extraction and analysis functions to support segments
- Document all new CLI parameters (--relax, auto-output)
- Add smart defaults section (yrow=8, auto-generated filenames)
- Include usage examples for relax feature
- Document output organization (results/ vs results/debug/)
- Add PowerShell batch command example from debug mode
- Update parameter descriptions with current behavior
Also: Set --relax default to 100 when flag used without value
- Add --relax option to include N frames before/after threshold frames
- Implement two-pass approach for relax feature
- Generate PowerShell command in debug mode to test all suggested thresholds
- Place debug mode outputs in results/debug folder by default
- Add main.py with complete CLI interface for strip photography extraction
- Support both column mode (--xcolumn) and row mode (--yrow) extraction
- Implement intelligent change detection to filter static frames
- Add configurable threshold system for compression control
- Include debug mode (--debug) with change analysis and graph generation
- Generate threshold suggestions with compression statistics
- Add matplotlib dependency for visualization features
- Update README with comprehensive usage examples and feature documentation
- Provide threshold selection guidelines and advanced usage patterns
Features:
* Automatic frame filtering based on visual changes
* Debug visualization with change graphs and statistics
* Configurable compression ratios from 10% to 95%+
* Support for various video formats via OpenCV
* Statistical analysis of frame-to-frame changes
* Threshold optimization recommendations