Blender Git Loki
Git Commits -> Revision 997b5fe
Revision 997b5fe by Aditya Y Jeppu (master) September 21, 2021, 08:55 (GMT) |
VSE strip thumbnails Draw thumbnails as strip overlay. This works for movie and image strips. To draw thumbnails, this overlay has to be enabled and strips must be tall enough. The thumbnails are loaded from source file using separate thread and stored in cache. Drawing code uses only images stored in cache, and if any is missing, background rendering job is started. If job can not render thumbnail, to prevent endless loop of creating job for missing image it sets `SEQ_FLAG_SKIP_THUMBNAILS` bit of `Sequence` flag. To prevent visual glitches during timeline panning and zooming, `View2D` flag `V2D_IS_NAVIGATING` is implemented. If bit is set, drawing code will look for set of evenly distributed thumbnails that should be guaranteed to exist and also set of previously displayed thumbnails. Due to volatile nature of cache these thumbnails can be missing anyway, in which case no new thumbnails will be drawn for particular strip. Cache capacity is limited to 5000 thumbnails and performs cleanup of non visible images when limit is reached. ref T89143 Reviewed By: ISS Differential Revision: https://developer.blender.org/D12266 |
Commit Details:
Full Hash: 997b5fe45dab8bd0e2976c8b673e56266134fc80
Parent Commit: fa2c169
Committed By: Richard Antalik
Lines Changed: +893, -13
23 Modified Paths:
/release/scripts/startup/bl_ui/space_sequencer.py (+1, -0) (Diff)
/source/blender/blenkernel/intern/screen.c (+2, -0) (Diff)
/source/blender/blenloader/intern/versioning_280.c (+1, -1) (Diff)
/source/blender/blenloader/intern/versioning_300.c (+16, -0) (Diff)
/source/blender/editors/interface/interface_templates.c (+5, -0) (Diff)
/source/blender/editors/interface/view2d_ops.c (+16, -2) (Diff)
/source/blender/editors/space_sequencer/sequencer_draw.c (+522, -0) (Diff)
/source/blender/editors/space_sequencer/sequencer_edit.c (+4, -2) (Diff)
/source/blender/editors/space_sequencer/sequencer_intern.h (+1, -0) (Diff)
/source/blender/editors/space_sequencer/space_sequencer.c (+13, -1) (Diff)
/source/blender/makesdna/DNA_sequence_types.h (+2, -1) (Diff)
/source/blender/makesdna/DNA_space_types.h (+9, -0) (Diff)
/source/blender/makesdna/DNA_view2d_types.h (+2, -0) (Diff)
/source/blender/makesrna/intern/rna_space.c (+5, -0) (Diff)
/source/blender/sequencer/intern/image_cache.c (+78, -3) (Diff)
/source/blender/sequencer/intern/image_cache.h (+6, -0) (Diff)
/source/blender/sequencer/intern/render.c (+183, -1) (Diff)
/source/blender/sequencer/intern/sequencer.c (+2, -0) (Diff)
/source/blender/sequencer/intern/utils.c (+1, -0) (Diff)
/source/blender/sequencer/SEQ_render.h (+21, -0) (Diff)
/source/blender/sequencer/SEQ_utils.h (+1, -1) (Diff)
/source/blender/windowmanager/intern/wm_jobs.c (+1, -1) (Diff)
/source/blender/windowmanager/WM_api.h (+1, -0) (Diff)
/source/blender/blenkernel/intern/screen.c (+2, -0) (Diff)
/source/blender/blenloader/intern/versioning_280.c (+1, -1) (Diff)
/source/blender/blenloader/intern/versioning_300.c (+16, -0) (Diff)
/source/blender/editors/interface/interface_templates.c (+5, -0) (Diff)
/source/blender/editors/interface/view2d_ops.c (+16, -2) (Diff)
/source/blender/editors/space_sequencer/sequencer_draw.c (+522, -0) (Diff)
/source/blender/editors/space_sequencer/sequencer_edit.c (+4, -2) (Diff)
/source/blender/editors/space_sequencer/sequencer_intern.h (+1, -0) (Diff)
/source/blender/editors/space_sequencer/space_sequencer.c (+13, -1) (Diff)
/source/blender/makesdna/DNA_sequence_types.h (+2, -1) (Diff)
/source/blender/makesdna/DNA_space_types.h (+9, -0) (Diff)
/source/blender/makesdna/DNA_view2d_types.h (+2, -0) (Diff)
/source/blender/makesrna/intern/rna_space.c (+5, -0) (Diff)
/source/blender/sequencer/intern/image_cache.c (+78, -3) (Diff)
/source/blender/sequencer/intern/image_cache.h (+6, -0) (Diff)
/source/blender/sequencer/intern/render.c (+183, -1) (Diff)
/source/blender/sequencer/intern/sequencer.c (+2, -0) (Diff)
/source/blender/sequencer/intern/utils.c (+1, -0) (Diff)
/source/blender/sequencer/SEQ_render.h (+21, -0) (Diff)
/source/blender/sequencer/SEQ_utils.h (+1, -1) (Diff)
/source/blender/windowmanager/intern/wm_jobs.c (+1, -1) (Diff)
/source/blender/windowmanager/WM_api.h (+1, -0) (Diff)