Page MenuHome

Sequencer cut loses animation data for the right strip
Closed, ResolvedPublic

Description

System Information
Operating system: Ubuntu 18.04.1 LTS

Blender Version
Broken: Latest master branch commit : 95736683a96d33a8a7220788502250fa9e109132

When cutting a strip using the VSE (this affects all types of strips), the animation data is duplicated in the resulting right-hand strip, but is not copied to the left-hand strip.

Exact steps for others to reproduce the error
Open the VSE, add a sound strip. Animate the "volume" property using two keyframes.
Open the Graph editor, visualize the "Volume" F-curve.
Soft-cut the sound strip, and examine the F-curves for the two resulting strips :

  • The left strip has no animation data
  • The right strip has TWO identical "Volume" F-curves

Possibly linked to the following code tag :
blenkernel/intern/sequencer.c:5448 (95736683a96d33a8a7220788502250fa9e109132)

static Sequence *seq_dupli(const Scene *scene_src, Scene *scene_dst, Sequence *seq, int dupe_flag, const int flag)
{
        Sequence *seqn = MEM_dupallocN(seq);

        seq->tmp = seqn;
        seqn->strip = MEM_dupallocN(seq->strip);

        seqn->stereo3d_format = MEM_dupallocN(seq->stereo3d_format);

        /* XXX: add F-Curve duplication stuff? */

Event Timeline

Hi,
After investigation, I believe I can submit a patch that solves this issue. Please let me know what you think and how much testing this requires

Richard Antalik (ISS) triaged this task as Confirmed, High priority.

@Guillaume M (mathers) Thanks for patch!

You can post patch for review or I can do it instead if you want.
I will look at it tomorrow.

I looked at this.

Your patch would undo some changes in bb98e83b99e63348e0396a5ffe5bb2a20ff1607a by @Bastien Montagne (mont29).

If I understood it correctly, problem was that meta strips did generate non-unique names
Not totally sure, what removal of SEQ_DUPE_UNIQUE_NAME solved, as this caused all strips to generate non-unique name.

Will try to reproduce and patch actual problem.

After applying my patch, I was unable to reproduce T55668. It looks like each strip its given a unique name properly, even with nested Meta-Strips.

I was able however to find a similar bug, reported as T60370, but I believe it is unrelated.

Therefore I am submitting patch D4186

After a bit more testing, it looks like this patch indeed solves this bug, but also introduces a new minor bug T60194.

I don't see how to solve T60370, has anyone experienced this type of problem ? Maybe there is a flag to set on the newly animated strip, or some kind of cache to clear ?

Youtube video demonstrating the problem

rBbb98e83b99 is indeed a wrong fix (breaking animation), need to redo that in another way that also handles animation well… :/