Skip to content

OpenAssetIO extensions for use in the Media Creation industry.

License

Notifications You must be signed in to change notification settings

mattdaw/OpenAssetIO-MediaCreation

 
 

Repository files navigation

OpenAssetIO-MediaCreation

OpenAssetIO extensions for use in Media Creation

Note: This repository is currently in a pre-alpha state, and so should not be used for any production critical applications.

Included are several well-known Traits and Specifications for use in OpenAssetIO hosts and managers. For more information on this mechanism, see the OpenAssetIO docs.

MediaCreation is an automatically generated Python package, openassetio-traitgen is used to generate trait implementations based on traits.yml

Project status

These initial incarnations of traits/specifications serve as illustrative examples to facilitate discussion and experimentation. Pending tasks:

  • Define YAML schema to represent traits/specifications.
  • Auto-generate Python classes from YAML
  • Auto-generate CPP classes from YAML
  • Auto-generate C classes from YAML.
  • Extend library to cover common post-production entities and locales.

Installation

Python

python -m pip install openassetio-mediacreation

C++

Note

During the configure process, openassetio-traitgen will be used to generate C++ trait files. This is assumed to be available in your environment. You may install it via python -m pip install openassetio-traitgen

cmake -S . -B build
cmake --build build
cmake --install build

A cmake package will be created under a dist directory in your build directory.

Running the tests

Python

To run the tests, on a local development checkout, you can install the package with pip, then run pytest.

Note, editable installs are not supported as the package is entirely auto-generated from the traits YAML.

python -m pip install .
python -m pip install pytest
pytest

C++

Note

Building with tests introduces a build-time dependency on OpenAssetIO, which must be discoverable via cmake.

The C++ tests are enabled via setting a cmake variable in the configure:

cmake -S . -B build -DOPENASSETIO_MEDIACREATION_ENABLE_TEST=ON
cmake --build build
ctest --test-dir build/tests/cpp

Contributing

This repository follows the contribution guidelines outlined in the main OpenAssetIO repository. All discussion most welcome!

When adding new Traits and Specifications:

  1. Update traits.yml
  2. Add an import test
  3. Update the RELEASE_NOTES

About

OpenAssetIO extensions for use in the Media Creation industry.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CMake 59.6%
  • Python 36.6%
  • C++ 3.8%