Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Antalik <richardantalik@gmail.com>2021-12-14 02:18:24 +0300
committerRichard Antalik <richardantalik@gmail.com>2021-12-14 02:43:54 +0300
commitb64750991334517a0d0cfc94c21d7276d5e5e833 (patch)
tree610cd4d2dda460f8060e464fee0a58afa4523827 /source/blender/sequencer/SEQ_relations.h
parent2a0a6a0541eaff06659a06ef18cac05e5674c844 (diff)
Fix T93844: High memory usage during VSE preview
Since 88c02bf826df FFmpeg handles are freed if image is not displayed. This change did not work correctly if strips are inside meta strip, because overlap did not consider meta strip boundary, only strips inside of meta strip. Pass frame range to `sequencer_all_free_anim_ibufs`, if strip is inside of meta strip, frame range is reduced to fit meta strip boundary, but if meta strip is being edited, range must be set to +/-`MAXFRAME`, otherwise playback performance would be too bad.
Diffstat (limited to 'source/blender/sequencer/SEQ_relations.h')
-rw-r--r--source/blender/sequencer/SEQ_relations.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/sequencer/SEQ_relations.h b/source/blender/sequencer/SEQ_relations.h
index 3c3fe2fdd83..9571e826759 100644
--- a/source/blender/sequencer/SEQ_relations.h
+++ b/source/blender/sequencer/SEQ_relations.h
@@ -54,6 +54,9 @@ void SEQ_relations_invalidate_cache_in_range(struct Scene *scene,
struct Sequence *seq,
struct Sequence *range_mask,
int invalidate_types);
+/**
+ * Release FFmpeg handles of strips that are not currently displayed to minimize memory usage.
+ */
void SEQ_relations_free_all_anim_ibufs(struct Scene *scene, int timeline_frame);
/**
* A debug and development function which checks whether sequences have unique UUIDs.