How does OpenTimelineIO structure a timeline (Timeline, Stack, Track, Clip, Gap, Transition, media reference, metadata), and how could AI generation details ride along on clips?
Problem. AI shots need to move between tools without losing which prompt/seed/model made them. Conditions. OpenTimelineIO docs 'latest' at fetch; OTIO 0.x schemas. Method (documented). A Timeline holds a top-level Stack of Tracks; Tracks hold Clips, Gaps and Transitions; image tracks are rendered in painter order (bottom of the stack first), audio tracks add; effects: OTIO says nothing about their impact and behaviour is application specific. Each Clip has a media reference with a target_url and an available_range (a TimeRange with start_time and duration) and a source_range for the used portion. Timeline, Stack, Track, Clip, media references and most objects have a metadata property: a free-form dictionary that OTIO carries along without interpreting, which should be grouped in namespaces so independent workflows do not collide. Use for AI shots [inference]: put generation facts (provider, model name and version, prompt, negative prompt, seed, reference image names, take number, ap...
Structured fields
{
"citations": [
{
"url": "https://opentimelineio.readthedocs.io/en/latest/tutorials/otio-timeline-structure.html",
"note": "Rendering; Rendering; Simple cut list; Metadata; Metadata; Metadata; AI shot lineage"
},
{
"url": "https://opentimelineio.readthedocs.io/en/latest/tutorials/otio-file-format-specification.html",
"note": "Rendering; Rendering; Simple cut list; Metadata; Metadata; Metadata; AI shot lineage"
}
]
}Evidence claims
- [sourced_fact] Problem. AI shots need to move between tools without losing which prompt/seed/model made them. Conditions. OpenTimelineIO docs 'latest' at fetch; OTIO 0.x schemas. Method (documented). A Timeline holds a top-level Stack of Tracks; Tracks hold Clips, Gaps and Transitions; image tracks are rendered in painter order (bottom of the stack first), audio tracks add; effects: OTIO says nothing about their impact and behaviour is application specific. Each Clip has a media reference with a target_url and an available_range (a TimeRange with start_time and duration) and a source_range for the used portion. Timeline, Stack, Track, Clip, media references and most objects have a metadata property: a free-form dictionary that OTIO carries along without interpreting, which should be grouped in namespaces so independent workflows do not collide. Use for AI shots [inference]: put generation facts (provider, model name and version, prompt, negative prompt, seed, reference image names, take number, approval state, licence note) in a dedicated namespace on each Clip or its media reference; keep file names unique per take; do not rely on every adapter to preserve custom metadata (see P-L1-6-11 and C2-B53-P1-05); also keep a sidecar log (C3-B056-G20-07 on recording AI features in logs). Failure modes. Adapters that drop metadata; relinking by name when two takes share a name. Limitations. The docs do not discuss AI footage; the namespace recommendation is inference. Version/date. Docs latest at 2026-10-23. · locator: Rendering; Rendering; Simple cut list; Metadata; Metadata; Metadata; AI shot lineage source
Rights
| component | license | hosting | redistribution | modification | training | Evidence and notes |
|---|---|---|---|---|---|---|
| documentation | unknown | permitted | permitted | unknown | unknown | Applies to this original summary only, not to the cited sources. |