Video frame extraction and image analysis for 3DGS dataset preparation. Same selection methods as in the Sharp Frames application.
v0.3.0 - Real-time selection previews
v0.3.0
Added
- Two-phase processing architecture: Separate extraction/analysis from selection phase
- Interactive selection screen: Visual preview of frame selection with real-time feedback
- Sharpness visualization: Bar chart showing frame quality distribution (first 100 frames)
- Live selection preview: See frame count before applying selection
- Parameter adjustment: Fine-tune selection parameters with instant visual feedback
Changed
- TUI workflow: Now operates in distinct extraction and selection phases
- Selection process: Interactive with visual feedback instead of batch processing
- Resource efficiency: Analyze frames once, try multiple selection methods without reprocessing
Fixed
- Windows compatibility: FFmpeg process hanging on Windows with large videos
- Process termination: Proper subprocess cleanup with timeout handling
- Thread safety: Enhanced concurrent processing stability on Windows
Technical
- Two-phase TUIProcessor: New orchestrator for separated extraction and selection phases
- Selection preview API: Added preview_selection methods to processor and selector
- SharpnessChart widget: Custom Textual widget for frame quality visualization
- Windows FFmpeg fix: Proactive termination on frame count completion with stall detection
Download
V0.2.4
v0.2.4
[0.2.4] - 2025-01-21
Added
- Smart Path Sanitization: Automatically removes quotes, shell command prefixes, and escape sequences from pasted file paths
- Intelligent File Path Routing: Drag-and-drop and file paths are automatically routed to appropriate input fields based on context
- Enhanced Input Validation: Visual feedback for valid/invalid inputs with helpful hints
- Improved User Experience: Seamless path handling eliminates common user frustrations
Changed
- Path Input UX: File path inputs now automatically clean user input for better usability
- Input Field Validation: Enhanced validators with automatic path sanitization
- Visual Feedback: Added helpful text indicating automatic quote removal
Fixed
- Processing Error Handling: Improved error messages and user feedback in processing screen
- Configuration Validation: Better handling of path validation edge cases
- MacOS fixes: Versions 0.2.1 - 0.2.3 addressed several cross compatibility issues with the textual interface on MacOS
Technical
- New PathSanitizer Utility: Comprehensive path cleaning with extensive test coverage (366+ test cases)
- Enhanced Validators: All path validators now support automatic sanitization
- Smart File Type Detection: Context-aware routing based on file extensions and current step
Download
Download
v0.2.0 - TUI and video directory processing
v0.2.0
New Features
Textual Interface (Default)
- Replaces command-line prompts with step-by-step wizard
- Real-time input validation and error feedback
- Enhanced error messages with specific guidance
Video Directory Processing
- Process all videos in a folder with a single command
- Automatically detects and processes supported video formats
- Maintains individual processing settings for each video
Usage Changes
# New default behavior
sharp-frames # Launches textual interface
# Existing functionality unchanged
sharp-frames input.mp4 output/ # Direct processing
sharp-frames video_folder/ output/ # Process all videos in folder
sharp-frames --interactive # Legacy prompts
Technical Changes
Added
- Path validation with existence/permission checking
- Numeric field validation with range checking
- Thread-safe subprocess management
- UI component testing
- Enhanced error analysis and reporting
Fixed
- Configuration parameter mapping
- Resource cleanup (temp files, subprocesses)
- Error message specificity
Breaking Changes
sharp-frameswithout arguments now launches UI instead of showing help- Use
sharp-frames --helpfor command-line help
Installation
pip install --upgrade sharp-frames
# or
pipx upgrade sharp-frames
Dependencies
- Added:
textual>=0.41.0 - All existing dependencies unchanged
Download
v0.1.3 - Image resizing
v0.1.3
Added
- Image resizing feature: New
--widthparameter to specify a custom width for extracted frames - Proportional scaling that preserves aspect ratio for both video extraction and directory processing
- Interactive mode prompt for specifying resize width
Fixed
- Improved FFmpeg subprocess handling to better manage stderr output
Download
Release v0.1.1
v0.1.1
Minor fixes and cleanup
- Updated default batch buffer value from 0 to 2 for better results in batched mode
- Improved FFmpeg dependency detection and warning messages
Fixed
- Fixed import issues that caused errors when running without installation
Download
Initial Release v0.1.0
v0.1.0
Added
- Initial release
- Support for extracting frames from video files
- Support for processing directories of images
- Three frame selection methods:
- best-n: Select best frames while maintaining minimum distance
- batched: Select best frame from each batch
- outlier-removal: Remove outliers based on comparison with neighbors
- Interactive mode with guided prompts
- Proper Python package structure for pip and pipx installation
- Command-line interface with
sharp-framescommand
Download
- Source: https://github.com/Reflct/sharp-frames-python
- JSON API: repos.ecosyste.ms
-
PURL:
pkg:github/Reflct/sharp-frames-python
- Stars 120
- Forks 11
- Open issues 1
- License other
- Language Python
- Size 271 KB
- Created at 11 months ago
- Updated at 2 months ago
- Pushed at 7 months ago
- Last synced at 2 months ago
- Dependencies parsed at Pending