Skip to content
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

AAF Adapter: Mob transcription heuristics #1249

Merged

Conversation

jchen9
Copy link
Contributor

@jchen9 jchen9 commented Mar 22, 2022

When we describe our AAF into OTIO space, we apply the following heuristic:

  1. First look for top level mobs and if found use that to transcribe.

  2. If we don't have top level mobs, look for composition mobs and use them to
    transcribe.

  3. Lastly if we don't have either, try to use master mobs to transcribe.

If we don't find any Mobs, just tell the user and do transcrption on an empty
list (to generate some 'empty-level' OTIO structure)

This heuristic is based on 'real-world' examples. There may still be some
corner cases / open questions (like could there be metadata on both
a composition mob and master mob? And if so, who would 'win'?)

In any way, this heuristic satisfies the current set of AAFs we are using
in our test-environment.

When we describe our AAF into OTIO space, we apply the following heuristic:

1) First look for top level mobs and if found use that to transcribe.

2) If we don't have top level mobs, look for composition mobs and use them to
transcribe.

3) Lastly if we don't have either, try to use master mobs to transcribe.

If we don't find any Mobs, just tell the user and do transcrption on an empty
list (to generate some 'empty-level' OTIO structure)

This heuristic is based on 'real-world' examples. There may still be some
corner cases / open questions (like could there be metadata on both
a composition mob and master mob? And if so, who would 'win'?)

In any way, this heuristic satisfies the current set of AAFs we are using
in our test-environment.
@jchen9 jchen9 changed the title Draft: Mob transcription heuristics AAF Adapter: Mob transcription heuristics Mar 22, 2022
@meshula meshula merged commit 048a2bf into AcademySoftwareFoundation:main Mar 23, 2022
@jchen9 jchen9 deleted the AAFTranscriptionMobsHeuristics branch March 23, 2022 16:04
andrewmoore-nz added a commit to thecargocultnz/OpenTimelineIO that referenced this pull request Apr 5, 2022
* main:
  Add Python 3.10 to CI (AcademySoftwareFoundation#1256)
  Fix missing init metadata (AcademySoftwareFoundation#1251)
  Support OTIO_PLUGIN_MANIFEST_PATH being set to an emptry string (AcademySoftwareFoundation#1253)
  Add ALE adapter argument `ale_name_column_key` (AcademySoftwareFoundation#1248)
  AAF Adapter: Mob transcription heuristics (AcademySoftwareFoundation#1249)
  Bump src/deps/Imath from `bd6f74c` to `bd254da` (AcademySoftwareFoundation#1245)
  clang notices that constexpr can't be used on a mutating function (AcademySoftwareFoundation#1242)
jminor pushed a commit that referenced this pull request May 2, 2022
* Look for composition mob first if it's available

When we describe our AAF into OTIO space, we apply the following heuristic:

1) First look for top level mobs and if found use that to transcribe.

2) If we don't have top level mobs, look for composition mobs and use them to
transcribe.

3) Lastly if we don't have either, try to use master mobs to transcribe.

If we don't find any Mobs, just tell the user and do transcrption on an empty
list (to generate some 'empty-level' OTIO structure)

This heuristic is based on 'real-world' examples. There may still be some
corner cases / open questions (like could there be metadata on both
a composition mob and master mob? And if so, who would 'win'?)

In any way, this heuristic satisfies the current set of AAFs we are using
in our test-environment.
@ssteinbach ssteinbach added this to the Public Beta 15 milestone Sep 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants