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
path: root/source
diff options
context:
space:
mode:
authorMatt Ebb <matt@mke3.net>2010-04-07 05:21:10 +0400
committerMatt Ebb <matt@mke3.net>2010-04-07 05:21:10 +0400
commit7efe41bc22e9fe9f9656b384cecf9dca9124f17a (patch)
tree65233f8a767b2b51760e0c89361524f75a95c59e /source
parentc960dc94011638230e55d5ca4fb53c1106aa5653 (diff)
Fix [#21257] Renders blank images when audio clip is present.
Only render sequencer when there are non-audio strips on the timeline.
Diffstat (limited to 'source')
-rw-r--r--source/blender/render/intern/source/pipeline.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c
index f9089e7399b..dfe61b29109 100644
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@ -2403,6 +2403,24 @@ static void renderresult_stampinfo(Scene *scene)
RE_ReleaseResultImage(re);
}
+static int seq_render_active(Render *re)
+{
+ Editing *ed;
+ Sequence *seq;
+
+ ed = re->scene->ed;
+
+ if (!(re->r.scemode & R_DOSEQ) || !ed || !ed->seqbase.first)
+ return 0;
+
+ for (seq= ed->seqbase.first; seq; seq= seq->next) {
+ if (seq->type != SEQ_SOUND)
+ return 1;
+ }
+
+ return 0;
+}
+
static void do_render_seq(Render * re)
{
static int recurs_depth = 0;
@@ -2484,7 +2502,7 @@ static void do_render_all_options(Render *re)
if(external_render_3d(re, 1)) {
/* in this case external render overrides all */
}
- else if((re->r.scemode & R_DOSEQ) && re->scene->ed && re->scene->ed->seqbase.first) {
+ else if(seq_render_active(re)) {
/* note: do_render_seq() frees rect32 when sequencer returns float images */
if(!re->test_break(re->tbh))
do_render_seq(re);