AcademySoftwareFoundation / OpenTimelineIO

Open Source API and interchange format for editorial timeline information.
http://opentimeline.io
Apache License 2.0
1.4k stars 276 forks source link

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

Open Tilix4 opened 5 years ago

Tilix4 commented 5 years ago

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.

ssteinbach commented 5 years ago

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?

Tilix4 commented 5 years ago

About the use cases :

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.

apetrynet commented 5 years ago

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)

Tilix4 commented 5 years ago

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.

apetrynet commented 5 years ago

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

Tilix4 commented 5 years ago

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

apetrynet commented 5 years ago

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

thiblahute commented 4 years ago

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.

jminor commented 1 month ago

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.