OpenTimelineIO Serialized Data Documentation

This document is a list of all the OpenTimelineIO classes that serialize to and from JSON, omitting SchemaDef plugins.

This document is automatically generated by running docs/autogen_serialized_datamodel.py, or by running make doc-model. It is part of the unit tests suite and should be updated whenever the schema changes. If it needs to be updated, run: make doc-model-update and this file should be regenerated.

Classes

Module: opentimelineio.adapters

Adapter.1

full module path: opentimelineio.adapters.adapter.Adapter

documentation:

Adapters convert between OTIO and other formats.

    Note that this class is not subclassed by adapters.  Rather, an adapter is
    a python module that implements at least one of the following functions:

        write_to_string(input_otio)
        write_to_file(input_otio, filepath) (optionally inferred)
        read_from_string(input_str)
        read_from_file(filepath) (optionally inferred)

    ...as well as a small json file that advertises the features of the adapter
    to OTIO.  This class serves as the wrapper around these modules internal
    to OTIO.  You should not need to extend this class to create new adapters
    for OTIO.

    For more information:
    https://opentimelineio.readthedocs.io/en/latest/tutorials/write-an-adapter.html# # noqa
    

parameters:

  • execution_scope: Describes whether this adapter is executed in the current python process or in a subshell. Options are: [‘in process’, ‘out of process’].
  • filepath: Absolute path or relative path to adapter module from location of json.
  • name: Adapter name.
  • suffixes: File suffixes associated with this adapter.

Module: opentimelineio.core

Composable.1

full module path: opentimelineio.core.composable.Composable

documentation:

An object that can be composed by tracks.

    Base class of:
        Item
        Transition
    

parameters:

  • metadata: Metadata dictionary for this Composable.
  • name: Composable name.

Composition.1

full module path: opentimelineio.core.composition.Composition

documentation:

Base class for an OTIO Item that contains other Items.

    Should be subclassed (for example by Track and Stack), not used
    directly.
    

parameters:

  • children: Items contained by this composition.
  • effects: List of effects on this item.
  • markers: List of markers on this item.
  • metadata: Metadata dictionary for this item.
  • name: Item name.
  • source_range: Range of source to trim to. Can be None or a TimeRange.

Item.1

full module path: opentimelineio.core.item.Item

documentation:

An Item is a Composable that can be part of a Composition or Timeline.

    More specifically, it is a Composable that has meaningful duration.

    Can also hold effects and markers.

    Base class of:
        - Composition (and children)
        - Clip
        - Gap
    

parameters:

  • effects: List of effects on this item.
  • markers: List of markers on this item.
  • metadata: Metadata dictionary for this item.
  • name: Item name.
  • source_range: Range of source to trim to. Can be None or a TimeRange.

MediaReference.1

full module path: opentimelineio.core.media_reference.MediaReference

documentation:

Base Media Reference Class.

    Currently handles string printing the child classes, which expose interface
    into its data dictionary.

    The requirement is that the schema is named so that external systems can
    fetch the required information correctly.
    

parameters:

  • available_range: Available range of media in this media reference.
  • metadata: Metadata dictionary.
  • name: Name of this media reference.

Module: opentimelineio.hooks

HookScript.1

full module path: opentimelineio.hooks.HookScript

documentation:

None

parameters:

  • execution_scope: Describes whether this adapter is executed in the current python process or in a subshell. Options are: [‘in process’, ‘out of process’].
  • filepath: Absolute path or relative path to adapter module from location of json.
  • name: Adapter name.

Module: opentimelineio.media_linker

MediaLinker.1

full module path: opentimelineio.media_linker.MediaLinker

documentation:

None

parameters:

  • execution_scope: Describes whether this adapter is executed in the current python process or in a subshell. Options are: [‘in process’, ‘out of process’].
  • filepath: Absolute path or relative path to adapter module from location of json.
  • name: Adapter name.

Module: opentimelineio.opentime

RationalTime.1

full module path: opentimelineio.opentime.RationalTime

documentation:

 Represents an instantaneous point in time, value * (1/rate) seconds
    from time 0seconds.
    

parameters:

  • rate: None
  • value: None

TimeRange.1

full module path: opentimelineio.opentime.TimeRange

documentation:

Contains a range of time, starting (and including) start_time and
    lasting duration.value * (1/duration.rate) seconds.

    A 0 duration TimeRange is the same as a RationalTime, and contains only the
    start_time of the TimeRange.
    

parameters:

  • duration: None
  • start_time: None

TimeTransform.1

full module path: opentimelineio.opentime.TimeTransform

documentation:

1D Transform for RationalTime.  Has offset and scale.

parameters:

  • offset:
  • rate:
  • scale:

Module: opentimelineio.plugins

PluginManifest.1

full module path: opentimelineio.plugins.manifest.Manifest

documentation:

Defines an OTIO plugin Manifest.

    This is an internal OTIO implementation detail.  A manifest tracks a
    collection of adapters and allows finding specific adapters by suffix

    For writing your own adapters, consult:
        https://opentimelineio.readthedocs.io/en/latest/tutorials/write-an-adapter.html#
    

parameters:

  • adapters: Adapters this manifest describes.
  • hook_scripts: Scripts that can be attached to hooks.
  • hooks: Hooks that hooks scripts can be attached to.
  • media_linkers: Media Linkers this manifest describes.
  • schemadefs: Schemadefs this manifest describes.

PythonPlugin.1

full module path: opentimelineio.plugins.python_plugin.PythonPlugin

documentation:

A class of plugin that is encoded in a python module, exposed via a
    manifest.
    

parameters:

  • execution_scope: Describes whether this adapter is executed in the current python process or in a subshell. Options are: [‘in process’, ‘out of process’].
  • filepath: Absolute path or relative path to adapter module from location of json.
  • name: Adapter name.

Module: opentimelineio.schema

Clip.1

full module path: opentimelineio.schema.clip.Clip

documentation:

The base editable object in OTIO.

    Contains a media reference and a trim on that media reference.
    

parameters:

  • effects: List of effects on this item.
  • markers: List of markers on this item.
  • media_reference: None
  • metadata: Metadata dictionary for this item.
  • name: Name of this clip.
  • source_range: Range of source to trim to. Can be None or a TimeRange.

Effect.1

full module path: opentimelineio.schema.effect.Effect

documentation:

None

parameters:

  • effect_name: Name of the kind of effect (example: ‘Blur’, ‘Crop’, ‘Flip’).
  • metadata: Metadata dictionary.
  • name: Name of this effect object. Example: ‘BlurByHalfEffect’.

FreezeFrame.1

full module path: opentimelineio.schema.effect.FreezeFrame

documentation:

Hold the first frame of the clip for the duration of the clip.

parameters:

  • effect_name: Name of the kind of effect (example: ‘Blur’, ‘Crop’, ‘Flip’).
  • metadata: Metadata dictionary.
  • name: Name of this effect object. Example: ‘BlurByHalfEffect’.
  • time_scalar: Linear time scalar applied to clip. 2.0 = double speed, 0.5 = half speed.

LinearTimeWarp.1

full module path: opentimelineio.schema.effect.LinearTimeWarp

documentation:

A time warp that applies a linear scale across the entire clip

parameters:

  • effect_name: Name of the kind of effect (example: ‘Blur’, ‘Crop’, ‘Flip’).
  • metadata: Metadata dictionary.
  • name: Name of this effect object. Example: ‘BlurByHalfEffect’.
  • time_scalar: Linear time scalar applied to clip. 2.0 = double speed, 0.5 = half speed.

TimeEffect.1

full module path: opentimelineio.schema.effect.TimeEffect

documentation:

Base Time Effect Class

parameters:

  • effect_name: Name of the kind of effect (example: ‘Blur’, ‘Crop’, ‘Flip’).
  • metadata: Metadata dictionary.
  • name: Name of this effect object. Example: ‘BlurByHalfEffect’.

ExternalReference.1

full module path: opentimelineio.schema.external_reference.ExternalReference

documentation:

Reference to media via a url, for example "file:///var/tmp/foo.mov" 

parameters:

  • available_range: Available range of media in this media reference.
  • metadata: Metadata dictionary.
  • name: Name of this media reference.
  • target_url: URL at which this media lives. For local references, use the ‘file://’ format.

Gap.1

full module path: opentimelineio.schema.gap.Gap

documentation:

None

parameters:

  • effects: List of effects on this item.
  • markers: List of markers on this item.
  • metadata: Metadata dictionary for this item.
  • name: Item name.
  • source_range: Range of source to trim to. Can be None or a TimeRange.

GeneratorReference.1

full module path: opentimelineio.schema.generator_reference.GeneratorReference

documentation:


    Base class for Generators.

    Generators are media references that become "generators" in editorial
    systems.  For example, color bars or a solid color.
    

parameters:

  • available_range: Available range of media in this media reference.
  • generator_kind: Kind of generator reference, as defined by the schema.generator_reference.GeneratorReferenceTypes enum.
  • metadata: Metadata dictionary.
  • name: Name of this media reference.
  • parameters: Dictionary of parameters for generator.

Marker.2

full module path: opentimelineio.schema.marker.Marker

documentation:

 Holds metadata over time on a timeline 

parameters:

  • color: Color string for this marker (for example: ‘RED’), based on the otio.schema.marker.MarkerColor enum.
  • marked_range: Range this marker applies to, relative to the Item this marker is attached to (e.g. the Clip or Track that owns this marker).
  • metadata: Metadata dictionary.
  • name: Name of this marker.

MissingReference.1

full module path: opentimelineio.schema.missing_reference.MissingReference

documentation:

Represents media for which a concrete reference is missing.

parameters:

  • available_range: Available range of media in this media reference.
  • metadata: Metadata dictionary.
  • name: Name of this media reference.

SchemaDef.1

full module path: opentimelineio.schema.schemadef.SchemaDef

documentation:

None

parameters:

  • execution_scope: Describes whether this adapter is executed in the current python process or in a subshell. Options are: [‘in process’, ‘out of process’].
  • filepath: Absolute path or relative path to adapter module from location of json.
  • name: Adapter name.

SerializableCollection.1

full module path: opentimelineio.schema.serializable_collection.SerializableCollection

documentation:

A kind of composition which can hold any serializable object.

    This composition approximates the concept of a `bin` - a collection of
    SerializableObjects that do not have any compositing meaning, but can
    serialize to/from OTIO correctly, with metadata and a named collection.
    

parameters:

  • children: SerializableObject contained by this container.
  • metadata: Metadata dictionary for this SerializableCollection.
  • name: SerializableCollection name.

Stack.1

full module path: opentimelineio.schema.stack.Stack

documentation:

None

parameters:

  • children: Items contained by this composition.
  • effects: List of effects on this item.
  • markers: List of markers on this item.
  • metadata: Metadata dictionary for this item.
  • name: Item name.
  • source_range: Range of source to trim to. Can be None or a TimeRange.

Timeline.1

full module path: opentimelineio.schema.timeline.Timeline

documentation:

None

parameters:

  • global_start_time: Global starting time value and rate of the timeline.
  • metadata: Metadata dictionary.
  • name: Name of this timeline.
  • tracks: Stack of tracks containing items.

Track.1

full module path: opentimelineio.schema.track.Track

documentation:

None

parameters:

  • children: Items contained by this composition.
  • effects: List of effects on this item.
  • kind: Composition kind (Stack, Track)
  • markers: List of markers on this item.
  • metadata: Metadata dictionary for this item.
  • name: Item name.
  • source_range: Range of source to trim to. Can be None or a TimeRange.

Transition.1

full module path: opentimelineio.schema.transition.Transition

documentation:

Represents a transition between two items.

parameters:

  • in_offset: Amount of the previous clip this transition overlaps, exclusive.
  • metadata: Metadata dictionary for this Composable.
  • name: Composable name.
  • out_offset: Amount of the next clip this transition overlaps, exclusive.
  • transition_type: Kind of transition, as defined by the schema.transition.TransitionTypes enum.