Skip to content

cmx_3600 adapter incorrectly processing three-clip transitions #912

@JoshBurnell

Description

@JoshBurnell

I have a case of a three part Transition in a CMX 3600 EDL. It looks like so:

Clip A -> Dissolve -> Clip B -> Dissolve -> Clip C

Here's the EDL:

TITLE:   TRANSITION_TEST_2
FCM: NON-DROP FRAME
001  ABC0000. V     C        01:00:06:18 01:00:08:00 01:04:11:17 01:04:12:23
002  ABC0010. V     C        01:00:06:15 01:00:08:18 01:04:12:23 01:04:15:02
003  ABC0010. V     C        01:00:08:18 01:00:08:18 01:04:15:02 01:04:15:02
003  ABC0020. V     D    035 01:00:06:22 01:00:10:07 01:04:15:02 01:04:18:11
* BLEND, DISSOLVE
004  ABC0020. V     C        01:00:10:07 01:00:10:07 01:04:18:11 01:04:18:11
004  ABC0030. V     D    064 01:00:06:10 01:00:09:22 01:04:18:11 01:04:21:23
* BLEND, DISSOLVE
005  ABC0040. V     C        01:00:08:14 01:00:12:14 01:04:21:23 01:04:25:23

In that example, ABC0020 should have a duration of 96, however OTIO it showing it to have 50 frames.

There appears to be something specifically wrong here, in the logic that derives what is the "previous clip":
https://github.com/PixarAnimationStudios/OpenTimelineIO/blob/84af5e5a30e4d14cf3434d6d055631e115ac1ee5/src/py-opentimelineio/opentimelineio/adapters/cmx_3600.py#L706-L717

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugA problem, flaw, or broken functionality.stale

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions