Sequencer cut loses animation data for the right strip #60194

Closed
opened 4 years ago by mathers · 15 comments

System Information
Operating system: Ubuntu 18.04.1 LTS

Blender Version
Broken: Latest master branch commit : 95736683a9

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 (95736683a9)

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? */
**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? */ ```
Poster

Added subscriber: @mathers

Added subscriber: @mathers
Collaborator

#60370 was marked as duplicate of this issue

#60370 was marked as duplicate of this issue
Poster

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
patch_T60194.patch

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 [patch_T60194.patch](https://archive.blender.org/developer/F6184336/patch_T60194.patch)

Added subscriber: @ChristopherAnderssarian

Added subscriber: @ChristopherAnderssarian

Mind adding the #video_sequencer tag?

CC @iss

Mind adding the #video_sequencer tag? CC @iss

Added subscriber: @iss

Added subscriber: @iss
iss self-assigned this 4 years ago
iss commented 4 years ago
Collaborator

@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.

@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.
iss commented 4 years ago
Collaborator

Added subscriber: @mont29

Added subscriber: @mont29
iss commented 4 years ago
Collaborator

I looked at this.

Your patch would undo some changes in bb98e83b99 by @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.

I looked at this. Your patch would undo some changes in bb98e83b99e63348e0396a5ffe5bb2a20ff1607a by @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.
Poster

After applying my patch, I was unable to reproduce #55668 . 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 #60370 , but I believe it is unrelated.

Therefore I am submitting patch [D4186 ](https://developer.blender.org/D4186)

After applying my patch, I was unable to reproduce [#55668 ](https://developer.blender.org/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 [#60370 ](https://developer.blender.org/T60370), but I believe it is unrelated. Therefore I am submitting patch [[D4186](https://archive.blender.org/developer/D4186) ](https://developer.blender.org/D4186)
Poster

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

I don't see how to solve #60370, 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

After a bit more testing, it looks like this patch indeed solves this bug, but also introduces a new minor bug [#60194 ](https://developer.blender.org/T60370). I don't see how to solve #60370, 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 ](https://youtu.be/CZowk2XVoXk)
iss was unassigned by mont29 4 years ago
mont29 self-assigned this 4 years ago
mont29 commented 4 years ago
Owner

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

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

This issue was referenced by 1ded3d2f7c

This issue was referenced by 1ded3d2f7c04100698afdee356e2ba8d4ae2d6bd
mont29 commented 4 years ago
Owner

Added subscriber: @JacquesLucke

Added subscriber: @JacquesLucke
mont29 commented 4 years ago
Owner

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'
mont29 closed this issue 4 years ago
Sign in to join this conversation.
No Label
Interest/Alembic
Interest/Animation & Rigging
Interest/Asset Browser
Interest/Asset Browser Project Overview
Interest/Audio
Interest/Automated Testing
Interest/Blender Asset Bundle
Interest/Collada
Interest/Compositing
Interest/Core
Interest/Cycles
Interest/Dependency Graph
Interest/Development Management
Interest/Eevee & Viewport
Interest/Freestyle
Interest/Geometry Nodes
Interest/Grease Pencil
Interest/ID Management
Interest/Images & Movies
Interest/Import/Export
Interest/Line Art
Interest/Masking
Interest/Modeling
Interest/Modifiers
Interest/Motion Tracking
Interest/Nodes & Physics
Interest/Overrides
Interest/Performance
Interest/Performance
Interest/Physics
Interest/Pipeline, Assets & I/O
Interest/Platforms, Builds, Tests & Devices
Interest/Python API
Interest/Render & Cycles
Interest/Render Pipeline
Interest/Sculpt, Paint & Texture
Interest/Text Editor
Interest/Translations
Interest/Triaging
Interest/Undo
Interest/USD
Interest/User Interface
Interest/UV Editing
Interest/VFX & Video
Interest/Video Sequencer
Interest/Virtual Reality
legacy module/Animation & Rigging
legacy module/Core
legacy module/Development Management
legacy module/Eevee & Viewport
legacy module/Grease Pencil
legacy module/Modeling
legacy module/Nodes & Physics
legacy module/Pipeline, Assets & IO
legacy module/Platforms, Builds, Tests & Devices
legacy module/Python API
legacy module/Rendering & Cycles
legacy module/Sculpt, Paint & Texture
legacy module/Triaging
legacy module/User Interface
legacy module/VFX & Video
legacy project/1.0.0-beta.2
legacy project/Asset Browser (Archived)
legacy project/BF Blender: 2.8
legacy project/BF Blender: After Release
legacy project/BF Blender: Next
legacy project/BF Blender: Regressions
legacy project/BF Blender: Unconfirmed
legacy project/Blender 2.70
legacy project/Code Quest
legacy project/Datablocks and Libraries
legacy project/Eevee
legacy project/Game Animation
legacy project/Game Audio
legacy project/Game Data Conversion
legacy project/Game Engine
legacy project/Game Logic
legacy project/Game Physics
legacy project/Game Python
legacy project/Game Rendering
legacy project/Game UI
legacy project/GPU / Viewport
legacy project/GSoC
legacy project/Infrastructure: Websites
legacy project/LibOverrides - Usability and UX
legacy project/Milestone 1: Basic, Local Asset Browser
legacy project/Nodes
legacy project/OpenGL Error
legacy project/Papercut
legacy project/Pose Library Basics
legacy project/Retrospective
legacy project/Tracker Curfew
legacy project/Wintab High Frequency
Meta/Good First Issue
Meta/Papercut
migration/requires-manual-verification
Module › Animation & Rigging
Module › Core
Module › Development Management
Module › Eevee & Viewport
Module › Grease Pencil
Module › Modeling
Module › Nodes & Physics
Module › Pipeline, Assets & IO
Module › Platforms, Builds, Tests & Devices
Module › Python API
Module › Render & Cycles
Module › Sculpt, Paint & Texture
Module › Triaging
Module › User Interface
Module › VFX & Video
Platform/FreeBSD
Platform/Linux
Platform/macOS
Platform/Windows
Priority › High
Priority › Low
Priority › Normal
Priority › Unbreak Now!
Status › Archived
Status › Confirmed
Status › Duplicate
Status › Needs Information from Developers
Status › Needs Information from User
Status › Needs Triage
Status › Resolved
Type › Bug
Type › Design
Type › Known Issue
Type › Patch
Type › Report
Type › To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#60194
Loading…
There is no content yet.