Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 50 million developers.Sign up
This release introduces the ImageSequenceReference schema to OTIO. It adds support for media references that point at sets of files on disk, for example, the rendered EXR frames for a shot. This work was contributed by @apetrynet and @reinecke. It includes RV adapter support.
Additionally, we're starting a restructure of some of the core math libraries built around a more consistent mathematical framework. The first of these changes is shifting to predicates based on Allen's Interval Algebra [https://en.wikipedia.org/wiki/Allen%27s_interval_algebra] .
- ImageSequenceReference (@apetrynet and @reinecke) main: #602 #722 w/ #783 #751
- Allen Interval Algebra predicates (@KarthikRIyer) #697
- AAF Reader metadata support #739
- Post adapter write hook added (@apetrynet) #730
- RV native plugin (so that you can read OTIO files from inside RV rather than convert via an adapter to .rvsession files) @avrata and @apetrynet #637
- Reverse and dissolve fixes, Wipe transition support was added to the CMX EDL adapter #763 #757 #687
- Fixing up some bugs and algorithms in
rationalTime.cpp #755 #721 #692 (@reinecke and @KarthikRIyer)
- Tox changed and our setup.cfg was altered to conform with the new standard
- otioview enhancement: double click to see full track name (@KarthikRIyer) #690
- conform.py example now prints support file suffixes (@TheBigSasha) #676
- FCP7 adapter bug fixes #674
- xges adapter markers and effects support (@hwilkes-igalia) #609
- Fix bugs in the kdenlive adapter (@vpinon) #714
- bumped pin of PyAAF2 version to 1.4.0 #738
- bug fixes in Markers #740 and #592 (@elabrosseRodeofx)
Includes PR #669, which fixes issues in the cmake build system reported on windows machines. As always, please let us know if you see any further issues and alert us! Thanks!
This is the first release with the C++ core. Please test the new build system and make sure it works for your needs. If you run into issues, pin to 0.11.0 (the last pure python release) and let us know so that we can address them.
The adapters remain in python, but the core library and algorithms are implemented in C++. For more information you can see this pr:
- C++ Core: the core of opentimelineio is now pybind11-wrapped C++. (see above)
- otiopluginfo command was added for printing information about plugins visible to otio: #586
- Kdenlive adapter included in contrib (thanks @vpinon) #618
- Also includes preliminary swift bindings
- Tweaks to the repo in anticipation of the move to being hosted by the Academy Software Foundation
- hook function arguments are passable to all commandline scripts (@mikekoetter) #651
- Documention for the C++ core, debugging and building
- local manifests are loaded so that they override the internal manifests for plugins (@JoshBurnell) #591
- Lots of upgrades for the AAF adapter (@JoshBurnell)
- SchemaDefs now have a repr method #566
- CMX EDL Adapter supports multiple locaters per clip now (@elabrosseRodeofx) #664
Lots of other small fixes and changes. Thank you to all of the community contributors!
This release is a final checkpoint before we land the C++ branch (cxx) into the master branch. We found there were a number of other small changes that needed to be made before the CXX and Master branches were ready to be merged, so we needed to do one more release before we did that.
- The CXX branch is now up to date with master and will be landed shortly after we make this release. (#528)
- In keeping with the VFX platform, we've dropped support for python 3.5 and added support for python 3.7 in our unit test and CI system. (#526)
- AAF bugfixes by @freesonluxo (#517, #518, #512, #493)
- Autogenerated schema documentation + unit test for detecting schema changes (#521)
- FCP XML bugfixes by @reinecke (#494)
OpenTimelineIO Release v0.10
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:
- 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:
- 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:
- 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
- speed improvement on
each_childthat reduced a 691s operation on a full-film OTIO file to 0.8s.
- speed improvement on
- #497, #488 Enhancements to Dropframe support in Opentime (@apetrynet and @reinecke)
- #450 Hookscript plugins now have arguments passed in (@mikekoetter)
- 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!
OpenTimelineIO Release v0.9
- #309 FCP X XML adapter (thanks @eric-with-a-c)
- New plugins:
- #342 UnknownSchema: If OTIO hits a schema it doesn't recognize, it doesn't trigger a parse error, instead a blind object is constructed and carried along. (@peachey)
- #312 Documentation for OTIO now lives on readthedocs: https://opentimelineio.readthedocs.io/en/latest/index.html (big thanks to @boredstiff)
- #357 Tracks now maintain a set to improve 'contains' performance, resulting in (in some cases) 50x speedup for constructing tracks with lots of clips (thanks @rogergodspeed)
- #358 Added
range_of_all_childrento return a dictionary of all the ranges of children of a track in the space of the parent (equivalent to
range_in_parent). This sped up the flatten algorithm considerably.
- #335, #325, #301 Improvements to the AAF reader (including support for handling muted clips)
- #299 Now commandline tools are organized into a 'console' module so that pip install correctly installs them
- #355 otioview, otioconvert and otiocat grew a commandline argument to disable the medialinker -m none
- #291 Builds now also include Python 3.6, to keep up with the VFX platform. (@boredstiff)
- #359 Ensure that constructors copy values for things that shouldn't be referenced.
- #302 otioview now has a number of keyboard shortcuts that make it easier to navigate (@bonpix)
- #321 Dark mode for otioview (@boredstiff)
As usual, other small fixes and improvements.
Addresses #313, making a point release with the bug fixes and pushing this to pypi. Includes:
- Fix location of console scripts so OpenTimelineIO commandline scripts work properly when installed from PyPI.
- Add a guard for pkg_resources missing
OpenTimelineIO Release v0.8
This feature includes a number of AAF and distribution related upgrades.
- #260: AAF adapter can read speed effects (+ a bunch of small bug fixes and enhancements)
- #239: OTIO is now in PyPI.
pip install opentimelineiofrom a shell to get the library! (thanks to @swallitsch)
- #222: SerializableObjects are now considered reference types, which addresses a
number of subtle bugs having to do with ‘instancing’ vs ‘copying’
- #237: You can make setuptools plugins to register adapters into OTIO now (thanks to @reinecke)
- #258: Drop frame timecode support in opentime timecode functions (thanks to @apetrynet)
__version__field in the opentimelineio package
import opentimelineio as otio; otio.__version__
- #286: Convienence constructor for creating gaps of a duration:
- #270: better support for installing OTIO on Windows
- #274: Code coverage badge on github page (thanks to @boredstiff )
- #247: You can pass adapter arguments into otioview
- #160: PySide 2.0 support for otioview (thanks to @boredstiff )
- Lots of other small fixes and upgrades. Non-Pixar folks who contributed to this release include:
Thanks to members of the community who chimed in on issues.