Page MenuHome

grouping VSE strips can break translucency
Closed, ResolvedPublic

Description

System Information
Linux bubastis 3.10.25-gentoo #10 SMP Thu Jan 30 22:17:35 UTC 2014 x86_64 Intel(R) Core(TM) i7-4800MQ CPU @ 2.70GHz GenuineIntel GNU/Linux
01:00.0 VGA compatible controller: NVIDIA Corporation GK107GLM [Quadro K1100M] (rev a1) (prog-if 00 [VGA controller])

Blender Version
Broken: git 2c69f1e574587c2364e9a94b45d0b363ffeebf61 and probably earlier

Short description of error

When grouping a set of VSE strips into a meta strip sometimes the translucency is broken.

Exact steps for others to reproduce the error

When grouping a set of VSE strips into a meta strip sometimes the translucency is broken.

In the VSE
Add a color strip on the bottom (1)
add a strip over that (2: from scene or image sequence).
Add another strip over that (3) from a scene that has transparency (its sky is unchecked in the Render Layers).
Set both strips to blend = Over Drop or Alpha Over
Animate the opacity on the top strip to make it fade out over time (from 75,1 to 90,0
Animate the opacity on the middle strip (2) to make it fade from 60,0 to 90,1 (fading in).

Render images at 60, 67, 75, 82, and 90.

Now group the top strips (2,3) to make a meta strip. Since the meta strip defaults to Replace (which seems like a bad default to me) adjust it to Over Drop or Alpha Over

Render images at 60, 67, 75, 82, and 90.

Become disappointed.

Details

Type
Bug

Event Timeline

Robert Forsman (mutantbob) created this task.
Robert Forsman (mutantbob) raised the priority of this task from to Needs Triage by Developer.

This is a .blend file I constructed to reproduce the problem I was having.

So, can confirm the problem, here is a quick hack to “fix” it: add a dummy strip below all other ones in the meta, e.g. a color one, with an alpha of zero.

@Sergey Sharybin (sergey): Don’t know whether this is a bug or an internal limitation? Your call. :)

Ideally the meta strip would have the same effect grouped as ungrouped, if only to keep the math of the system beautiful.

I'm assuming that the meta strips don't have an alpha layer when they are composing their internal bits. This problem is NOT evident when there is only one strip in effect (probably because it does not require any composition).

It will take someone familiar with that code to come up with a fix, and it will not be a high priority.

Sergey Sharybin (sergey) closed this task as Resolved.Jun 4 2014, 6:34 PM

I've committed some changes to rBec97cb8 which tries to make it so adding an invisible strip at the bottom of the meta doesn't change final render. This needs to be stress-tested tho..

As for meta strip blend type -- it's rather tricky to choose right one automatically, so i would just consider this a TODO for the future.

Thanks for the report and let us know if you've got more issues!

I was able to fetch the latest tree and it seems 835595505858fcfcc106ce721c2f270923ead2b7 composites strips how I want. Hopefully there are no regressions and this fix will work well for everyone.