[Bf-blender-cvs] [4863253] master: Fix T39702: VSE channel preview: strips used as effect operands no more visible
Sergey Sharybin
noreply at git.blender.org
Mon Apr 14 13:51:12 CEST 2014
Commit: 4863253c2f9044f146874a4ef7bc8abb1edc1b2b
Author: Sergey Sharybin
Date: Mon Apr 14 17:50:47 2014 +0600
https://developer.blender.org/rB4863253c2f9044f146874a4ef7bc8abb1edc1b2b
Fix T39702: VSE channel preview: strips used as effect operands no more visible
===================================================================
M source/blender/blenkernel/intern/sequencer.c
===================================================================
diff --git a/source/blender/blenkernel/intern/sequencer.c b/source/blender/blenkernel/intern/sequencer.c
index dd26605..040c46a 100644
--- a/source/blender/blenkernel/intern/sequencer.c
+++ b/source/blender/blenkernel/intern/sequencer.c
@@ -1156,7 +1156,7 @@ StripElem *BKE_sequencer_give_stripelem(Sequence *seq, int cfra)
return se;
}
-static int evaluate_seq_frame_gen(Sequence **seq_arr, ListBase *seqbase, int cfra)
+static int evaluate_seq_frame_gen(Sequence **seq_arr, ListBase *seqbase, int cfra, int chanshown)
{
Sequence *seq;
Sequence *effect_inputs[MAXSEQ + 1];
@@ -1200,6 +1200,12 @@ static int evaluate_seq_frame_gen(Sequence **seq_arr, ListBase *seqbase, int cfr
if (seq_arr[seq->machine] && seq_arr[seq->machine]->type & SEQ_TYPE_EFFECT) {
continue;
}
+ /* If we're shown a specified channel, then we want to see the stirps
+ * which belongs to this machine.
+ */
+ if (chanshown != 0 && chanshown <= seq->machine) {
+ continue;
+ }
seq_arr[seq->machine] = NULL;
}
@@ -1214,7 +1220,7 @@ int BKE_sequencer_evaluate_frame(Scene *scene, int cfra)
if (ed == NULL)
return 0;
- return evaluate_seq_frame_gen(seq_arr, ed->seqbasep, cfra);
+ return evaluate_seq_frame_gen(seq_arr, ed->seqbasep, cfra, 0);
}
static bool video_seq_is_rendered(Sequence *seq)
@@ -1232,7 +1238,7 @@ static int get_shown_sequences(ListBase *seqbasep, int cfra, int chanshown, Sequ
return 0;
}
- if (evaluate_seq_frame_gen(seq_arr, seqbasep, cfra)) {
+ if (evaluate_seq_frame_gen(seq_arr, seqbasep, cfra, chanshown)) {
if (b == 0) {
b = MAXSEQ;
}
More information about the Bf-blender-cvs
mailing list