We have a port to C++ that you can preview on the cxx branch which we will soon land into master. There are also some schema changes we'd like to make, which we'll be working on and presenting to the community after we land the C++ port. If you'd like to read about how that will work:
https://opentimelineio.readthedocs.io/en/latest/tutorials/wrapping-otio.html
Breaking Change:
- In anticipation of the C++ port (see the cxx branch: https://github.com/PixarAnimationStudios/OpenTimelineIO/tree/cxx) a number of changes were made to make the python API behave like the C++ one
- 372 types in Opentime are now immutable
- This led to other enhancements that shouldn't be as noticeable to developers:
- 477 `Timeline.global_start_time` had a default value of 0, 24 and was not being serialized. Now it defaults to `None` and is correctly serializead/deserialized
- 377 JSON serializer adapter arguments tweaked
- 364 Using `weakref` to point at parents
- 400 the `__copy__` method has been removed
Big Changes:
- Lots of upgrades and new features for the AAF Adapter, including:
- 432, 460, 461, 454 Writing AAFs! (thanks freesonluxo and shahbazk8194!)
- Thanks to andrewmoore-nz and thecargocultnz for all the great test data, we always appreciate that!
- AAF unit tests now work on our continuous build system
- Lots of robustness and correctness upgrades to the AAF Reader (jchen9, flavienliger, others)
- 396 Adapter was ported from pyaaf1 to pyaaf2 (freesonluxo and shahbazk8194)
- ...and thanks to markreidvfx for bug fixes in upstream pyaaf2!
- FCPX adapter:
- 425 markers and detached audio (eric-with-a-c)
- OTIOView upgrades:
- 451 playhead/ruler for inspecting frame numbers (tdervieux)
- 457 upgrade to the effect widget legibility (tdervieux)
- 467 key navigation filter menu (tdervieux)
- 449 frame all function (tdervieux)
- 378 fixing support for nested tracks (avrata)
- 422 Significant performance boost for large files
- Optimization:
- speed improvement on `each_child` that reduced a 691s operation on a full-film OTIO file to 0.8s.
- 497, 488 Enhancements to Dropframe support in Opentime (apetrynet and reinecke)
- 450 Hookscript plugins now have arguments passed in (mikekoetter)
New adapters:
- 412 GStreamer Editing Services XML adapter (thiblahute)
Small Changes:
- arguments for the commandline tools are now more consistent and richer
- media linker arguments are now passed in
- 434, 392 upgrades for the EDL adapter (apetrynet, mikekoetter)
- 437 there was a slice membership bug that got fixed
- 426, 363 For audio-only tracks, the rv adapter will insert a blank movieproc so only sound is loaded from a source (avrata, apetrynet)
- better unicode string support
- 462 ALE adapter ugprades (mikekoetter)
- 403 Fix a bug in the hook/manifest system (timlehr)
And more! Thanks to everyone for this big release!