Skip to content

Conversation

cato-o
Copy link
Contributor

@cato-o cato-o commented Aug 15, 2025

Added a diff feature that compares the clips of two OTIO timelines. Clips are categorized based on changes from timeline A to timeline B. Outputs an annotated and color coded OTIO with tracks from both timelines visualizing differences as well as a text summary.

Addresses #26

Demo-ed at 2025 ASWF OTIO Virtual Town Hall

otiodiff

cato-o added 23 commits August 18, 2025 11:29
Signed-off-by: Yingjie Wang <[email protected]>
Signed-off-by: Yingjie Wang <[email protected]>
…with video only, audio only, or both video and audio

Signed-off-by: Yingjie Wang <[email protected]>
…istence into timeline summary and updated variable/function names

Signed-off-by: Yingjie Wang <[email protected]>
…tance variable names to be more descriptive, refactored test and diff scripts to match

Signed-off-by: Yingjie Wang <[email protected]>
… typo in inspect example, and updated otiodiff function call from main to diff

Signed-off-by: Yingjie Wang <[email protected]>
…ed docstrings and updated variable/function naming

Signed-off-by: Yingjie Wang <[email protected]>
…making tracks for A and B

Signed-off-by: Yingjie Wang <[email protected]>
Signed-off-by: Yingjie Wang <[email protected]>
def __init__(self, source_clip, track_num, note=None):
self.full_name = source_clip.name
self.name = self.splitFullName(source_clip)[0]
self.version = self.splitFullName(source_clip)[1]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This could avoid calling the function twice:

self.name, self.version = self.splitFullName(source_clip)

@@ -0,0 +1,162 @@
import opentimelineio as otio

# TODO: clip comparable??? ClipInfo
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's go with ClipInfo

Copy link
Collaborator

@jminor jminor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is getting close!

Could you remove some of the blocks of commented-out code that you don't think would be useful to another person working on this later.

Let's walk through the remaining TODOs & either address them if they're quick, or turn them into "suggestion for future work".

Signed-off-by: Yingjie Wang <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants