Add animated transition preview support
Technical Implementation Details
-
Added
TransitionIconDelegateclass for rendering animated GIF previews in QListView- Handles both animated GIF and static PNG previews
- Implements custom painting with proper scaling and centering
- Manages QMovie instances with frame change notifications
-
Integrated preview generation system
- Added Python script (
generate_transition_previews.py) for MLT-based preview generation - Script uses
meltcommand to create GIF previews between colored clips - Supports parallel generation with configurable dimensions
- Added Python script (
-
Enhanced
TransitionListWidgetfunctionality- Added "Generate Previews" button to toolbar
- Implemented preview directory management using QStandardPaths
- Added debug logging for preview loading and generation
-
Improved UI/UX
- Added fallback static previews when GIFs aren't available
- Implemented proper view refresh on preview generation
- Added progress feedback during preview generation
Technical Notes
- For now if you look at the
transitionlistwidget.cpp, the script path is hardcoded, needs to be changed - Preview GIFs are stored in
~/.local/share/kdenlive/transitions/previews/ - Default preview size: 320x180 pixels
- Uses MLT's built-in transitions for preview generation