From a092baa7f90b2d5f13771d46f64ff5cf86cc5a05 Mon Sep 17 00:00:00 2001 From: Germano Cavalcante Date: Fri, 23 Jul 2021 10:02:33 -0300 Subject: VSE UX: Make Speed Effect strips more user friendly. **Drawing Changes:** - F-curve drawing for Stretch, Multiply, Length and Frame Number. - Value drawing when no keyframes for Stretch, Length and Frame Numbers. General view of the new drawing for each speed effect mode: {F9796642, size=full} Detail of the horizontal zero (blue) line in the new `Multiply` mode: {F9798520, size=full} Nice to have (but I don't know how): - Auto adjusting of endframe when using Multiply or Boost. Differential Revision: https://developer.blender.org/D6110 --- source/blender/sequencer/intern/effects.c | 2 +- source/blender/sequencer/intern/effects.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'source/blender/sequencer') diff --git a/source/blender/sequencer/intern/effects.c b/source/blender/sequencer/intern/effects.c index 7757271a2e5..316eceb6b73 100644 --- a/source/blender/sequencer/intern/effects.c +++ b/source/blender/sequencer/intern/effects.c @@ -3136,7 +3136,7 @@ static int early_out_speed(Sequence *UNUSED(seq), float UNUSED(facf0), float UNU * useful to use speed effect on these strips because they can be animated. This can be done by * using their length as is on timeline as content length. See T82698. */ -static int seq_effect_speed_get_strip_content_length(const Sequence *seq) +int seq_effect_speed_get_strip_content_length(const Sequence *seq) { if ((seq->type & SEQ_TYPE_EFFECT) != 0 && SEQ_effect_get_num_inputs(seq->type) == 0) { return seq->enddisp - seq->startdisp; diff --git a/source/blender/sequencer/intern/effects.h b/source/blender/sequencer/intern/effects.h index 1bce4f324c3..de9c886aa57 100644 --- a/source/blender/sequencer/intern/effects.h +++ b/source/blender/sequencer/intern/effects.h @@ -39,6 +39,7 @@ struct Sequence; */ struct SeqEffectHandle seq_effect_get_sequence_blend(struct Sequence *seq); +int seq_effect_speed_get_strip_content_length(const struct Sequence *seq); void seq_effect_speed_rebuild_map(struct Scene *scene, struct Sequence *seq, bool force); float seq_speed_effect_target_frame_get(const struct SeqRenderData *context, struct Sequence *seq, -- cgit v1.2.3