-
Notifications
You must be signed in to change notification settings - Fork 294
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FCP X XML adapter #309
FCP X XML adapter #309
Conversation
Codecov Report
@@ Coverage Diff @@
## master #309 +/- ##
========================================
+ Coverage 90.89% 91% +0.11%
========================================
Files 53 55 +2
Lines 4512 4890 +378
========================================
+ Hits 4101 4450 +349
- Misses 411 440 +29
Continue to review full report at Codecov.
|
Thanks @eric-with-a-c ! This is really helpful. We'll take a closer look when we get back from SIGGRAPH. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few small things. We're also trying to find someone with a bit more FCPX experience to take a look, sorry this has taken a while to get around to.
So we were able to track down an expert on the FCP X XML format. Here is a summary of their comments & advice:
Regarding the format information:
|
Thanks for the feedback! I added the use of a SerializableCollection of Timelines to account for the possibility of having more than 1 sequence in an event. I also played around with adding another SerializableCollection of SerializableCollections since an FCP X Library can have multiple events, which can have multiple sequences. However, otioview didn't seem to like that level of nesting, so I left it out for now. Presently the event name is being stored as the SerializableCollection's name and then the SerailizableCollection's name is used to set the event name when round tripping. But I could make it a piece of metadata if that's the preferred way of handling that. Let me know if you'd like it changed. That's good to know about the formats. Since we still need a format for the sequence, it looks like there's still a dependency on ffprobe. Let me know if there is anything else that needs to be adjusted before merging. Thanks again! |
@eric-with-a-c, thanks for the contribution! |
Amazing work @eric-with-a-c ! Thank you!! |
Hi @eric-with-a-c! Sorry for reaching out to you via this old PR. I'm not sure if you're on the ASWF slack(?). I'm reaching out on the behalf of OpenTimelineIO as we're in the process of moving adapters out of the main OTIO repo and over to individual repos under OpenTimelineIO organisation. We're doing this as part of the v1.0 release plan. Please let me know what you think. |
This is a basic adapter for working with FCP X XMLs. While this adapter will handle basic FCP X projects, including compound clips, it does not, at present, support markers or video clips that have detached audio.
ffprobe is required to create FCP X XMLs from an otio without errors on import. If ffprobe is not available or is not in the path, then an error will be displayed in FCP X when importing the XML. However, the timeline will still look an function properly in FCP X.
#37