OpenTimelineIO icon indicating copy to clipboard operation
OpenTimelineIO copied to clipboard

Add a way to signify two (or more) clips are linked/grouped/associated

Open Tilix4 opened this issue 7 years ago • 9 comments

Often, in editing softwares, different clips are grouped/associated. For example, an audio clip and a video one. Or two video clips, or three... It could be great to have some information to signify it.

Tilix4 avatar Oct 15 '18 13:10 Tilix4

We don't have an explicit way to do this at the moment, however it can be stashed in the metadata if you're using a custom adapter. Is there a specific adapter path or use case you have in mind for this?

ssteinbach avatar Oct 18 '18 05:10 ssteinbach

About the use cases :

  • Sound and video are not recorded together, then I synchronize them (they are associated then) and I have to migrate it from an editing software to another, I would like to not have to associate them a second time..
  • A storyboarding software (like Storyboarder) defines shots and boards. A shot may contain several boards. If I export it in an editing software (or in an animation software which has a timeline) as reference. I cannot know to which shot boards are related to. If I have the association information, they are already linked, and if I want to change the editing, all the boards from the same shot move together.
  • I'm currently working on an MLT adapter, and Kdenlive has something to group things in their xml (.kdenlive is an XML MLT based).

I know this is something which doesn't exist at all in exchange XML formats for now (maybe in AAF...), I think it's a lack and I thought this is something OTIO could initiate, softwares will follow.

Tilix4 avatar Oct 18 '18 08:10 Tilix4

Hey, @Tilix4 . Not trying to hijack this thread, but I'm also working on an MLT adapter. It's still a bit rough and also geared towards support for melt, but would be interesting to compare notes (sort of speak) to handle different dialects etc. my adapter I haven't worked on it for a while, but also came to the point where I need to handle grouped audio and video. (Not sure I pushed the latest changes though)

apetrynet avatar Oct 18 '18 08:10 apetrynet

Hey @apetrynet . You're not hijacking, it's great to know I'm not alone wanting this feature. You're much more advanced on your adapter (I just started mine), I started to look around because I need this group feature. If you want, I opened a thread in the MLT github, to require this nomenclature.

Tilix4 avatar Oct 18 '18 09:10 Tilix4

@Tilix4 cool! I'll try to pick up my work again soon.

apetrynet avatar Oct 18 '18 09:10 apetrynet

@apetrynet Dan Dennedy from MLT answered me : https://github.com/mltframework/mlt/issues/375#issuecomment-431113832

Tilix4 avatar Oct 18 '18 21:10 Tilix4

@Tilix4 Thanks! My initial use case I referred to was more in line of the grouping/syncing of video and audio files not necessarily from the same source, but the other needs are interesting as well. Cool that Dan Dennedy has interest in adding OTIO support in MLT!

apetrynet avatar Oct 18 '18 21:10 apetrynet

I also need something like that for the xges adapter, right now we are loosing all the grouping information when going through otio.

fwiw, in the GStreamer Editing Services, Clip is a subclass of Container, which contains one or more TrackElements from the same media file. Then we have the notion of Group (another subclass of Container) which can contain one or more Container objects. In the xges file format, groups are referenced at the end with a simple list of the children identified by their uid (with their metadata).

I would be happy to help design and possibly implement grouping support in Otio.

thiblahute avatar Jul 12 '19 23:07 thiblahute

We are open to proposals for how linked clips should be supported in OTIO.

One detail which may be helpful for anyone building this: the C++ SDK has some support for internal references to clips within an OTIO file. Look for OTIO_INSTANCING_SUPPORT in the code to see how that works.

jminor avatar May 23 '24 17:05 jminor