Fix mistake in previous commit

Fix error in b4100ed377

`seq_retiming_evaluate()` returns range from 0 to 1, to which framerate
correction was applied. this is incorrect, and correction should be
applied to function input.
This commit is contained in:
Richard Antalik
2023-03-03 23:00:16 +01:00
parent c066035907
commit 6749593aec
2 changed files with 3 additions and 5 deletions
@@ -144,8 +144,7 @@ float seq_retiming_evaluate(const Scene *scene, const Sequence *seq, const int f
const float segment_fac = segment_frame_index / float(segment_length);
const float target_diff = next_handle->retiming_factor - previous_handle->retiming_factor;
return previous_handle->retiming_factor +
(target_diff * segment_fac) * seq_time_media_playback_rate_factor_get(scene, seq);
return previous_handle->retiming_factor + (target_diff * segment_fac);
}
SeqRetimingHandle *SEQ_retiming_add_handle(Scene *scene, Sequence *seq, const int timeline_frame)
+2 -3
View File
@@ -86,13 +86,12 @@ float seq_give_frame_index(const Scene *scene, Sequence *seq, float timeline_fra
frame_index = max_ff(frame_index, 0);
frame_index *= seq_time_media_playback_rate_factor_get(scene, seq);
if (SEQ_retiming_is_active(seq)) {
const float retiming_factor = seq_retiming_evaluate(scene, seq, frame_index);
frame_index = retiming_factor * (length - 1);
}
else {
frame_index *= seq_time_media_playback_rate_factor_get(scene, seq);
}
/* Clamp frame index to strip content frame range. */
frame_index = clamp_f(frame_index, 0, length);