SMPTE   ST   2067 - 206
CONFIDENTIAL Working Committee Draft
SMPTE Standard

Interoperable Master Format β€” Event-based, Text-based Metadata Plug-in

Approved - 2026-02-02 2026-03-19

Copyright Β© 2026 , Society of Motion Picture and Television Engineers . All rights reserved. No part of this material may be reproduced, by any means whatsoever, without the prior written permission of the Society of Motion Picture and Television Engineers.


Warning: This document is an unpublished work under development and shall not be referred to as a SMPTE Standard, Recommended Practice, or Engineering Guideline. It is distributed for review and comment; distribution does not constitute publication. Recipients of this document are strongly encouraged to submit, with their comments, notification of any relevant patent rights of which they are aware and to provide supporting documentation.

Table of contents πŸ”—

  1. Foreword
  2. Introduction
  3. 1 Scope
  4. 2 Conformance
  5. 3 Normative references
  6. 4 Terms and definitions
  7. 5 Timed Events Resource
  8. 6 Timed Events Ancillary Resource
  9. 7 Event Scheme
    1. 7.1 General
    2. 7.2 Definition Specification of an Event Scheme
  10. 8 Timed Events Track File
    1. 8.1 General
    2. 8.2 Timed Events Resource mapping
    3. 8.3 Timed Events Ancillary Resource mapping
    4. 8.4 Index Table
    5. 8.5 Random Index Pack (Informative)
    6. 8.6 Essence Descriptors
      1. 8.6.1 General
      2. 8.6.2 TimedEventsTextDescriptor
      3. 8.6.3 TimedEventsAncillaryResourceSubDescriptor
  11. 9 Composition
    1. 9.1 General
    2. 9.2 Timed Events Virtual Track
      1. 9.2.1 Sequence elements
        1. 9.2.1.1 General
        2. 9.2.1.2 Definition of a Timed Events Virtual Track Sequence element
      2. 9.2.2 Homogeneous Essence
      3. 9.2.3 TimedEventsVirtualTrackParameterSet
  12. Annex A Simple Scheme (Normative)
    1. A.1 Overview (Informative)
    2. A.2 General
    3. A.3 XML Timed Events Resource
    4. A.4 JSON Timed Events Resource
    5. A.5 Timed Events Resource properties
  13. Annex B Sequence elements for use with the Simple Scheme (Normative)
    1. B.1 Overview (Informative)
    2. B.2 General
  14. Additional elements
  15. Bibliography

Foreword πŸ”—

The Society of Motion Picture and Television Engineers (SMPTE) is an internationally-recognized standards developing organization. Headquartered and incorporated in the United States of America, SMPTE has members in over 80 countries on six continents. SMPTE’s Engineering Documents, including Standards, Recommended Practices, and Engineering Guidelines, are prepared by SMPTE’s Technology Committees. Participation in these Committees is open to all with a bona fide interest in their work. SMPTE cooperates closely with other standards-developing organizations, including ISO, IEC and ITU. SMPTE Engineering Documents are drafted in accordance with the rules given in its Standards Operations Manual.

For more information, please visit www.smpte.org .

At the time of publication no notice had been received by SMPTE claiming patent rights essential to the implementation of this Engineering Document. However, attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. SMPTE shall not be held responsible for identifying any or all such patent rights.

This document was prepared by Technology Committee 35PM.

Introduction πŸ”—

This clause is entirely informative and does not form an integral part of this Engineering Document.

The IMF family of standards defines a number of different mechanisms for adding metadata (both static metadata and event-based, or timeline, metadata) to Compositions, with each mechanism having its own characteristics. A number of different mechanisms might be used in a single Composition.

This document specifies a plug-in mechanism to add generic, event-based, text-based metadata (such as an XML, JSON or YAML document) and associated binary resources (such as images) to IMF Compositions. This caters for metadata that:

Example use cases could include metadata describing: the segmentation of content into chapters; appearances of characters on screen; results of quality checking (QC) procedures; content usage rights.

At its core, the mechanism defined by this document is similar to that defined in SMPTE ST 2067-2:2020 for adding Timed Text to IMF Compositions (which utilizes Timed Text Track Files per SMPTE ST 429-5 ). However, the mechanism defined in this document is applicable for generic event-based metadata and provides additional functionality important for other use cases. In both mechanisms there is a text-based metadata document that defines a timeline of events and this is carried as Data Essence in an MXF file. This timeline of events is represented "transparently" by MXF Header Metadata structures: a Data Track both in the Top-Level File Package and in the Material Package with the zero point of the timeline of events being co-timed with the Zero Point of these Data Tracks.

The plug-in defined in this document is designed to allow carriage of pre-existing (outside of the IMF ecosystem) event-based metadata resources as long as they are text-based. This allows the benefits of IMF to be leveraged without needing to generate IMF-specific metadata schemas or documents:

This does require that consideration be given to how the event-based metadata will be handled within the context of an IMF Composition where all components need to be synchronized and processed using Composition Edit Units.

In summary, this document defines:

1 Scope πŸ”—

This document specifies a plug-in mechanism to add generic, event-based, text-based metadata and associated binary resources to IMF Compositions. Pre-existing metadata documents are supported in addition to those based on the optional event-based metadata scheme defined specified in this document for XML and JSON.

2 Conformance πŸ”—

Normative text is text that describes elements of the design that are indispensable or contains the conformance language keywords: "shall", "should", or "may". Informative text is text that is potentially helpful to the user, but not indispensable, and can be removed, changed, or added editorially without affecting interoperability. Informative text does not contain any conformance keywords.

All text in this document is, by default, normative, except: the Introduction, any clause explicitly labeled as "Informative" or individual paragraphs that start with "Note:"

The keywords "shall" and "shall not" indicate requirements strictly to be followed in order to conform to the document and from which no deviation is permitted.

The keywords, "should" and "should not" indicate that, among several possibilities, one is recommended as particularly suitable, without mentioning or excluding others; or that a certain course of action is preferred but not necessarily required; or that (in the negative form) a certain possibility or course of action is deprecated but not prohibited.

The keywords "may" and "need not" indicate courses of action permissible within the limits of the document.

The keyword "reserved" indicates a provision that is not defined at this time, shall not be used, and may be defined in the future. The keyword "forbidden" indicates "reserved" and in addition indicates that the provision will never be defined in the future.

A conformant implementation according to this document is one that includes all mandatory provisions ("shall") and, if implemented, all recommended provisions ("should") as described. A conformant implementation need not implement optional provisions ("may") and need not implement them as described.

Unless otherwise specified, the order of precedence of the types of normative information in this document shall be as follows: Normative prose shall be the authoritative definition; tables shall be next; then formal languages; then figures; and then any other language forms.

3 Normative references πŸ”—

The following documents are referred to in the text in such a way that some or all of their content constitutes requirements of this document. For dated references, only the edition cited applies. For undated references, the latest edition of the referenced document (including any amendments) applies.

4 Terms and definitions πŸ”—

For the purposes of this document, the terms and definitions given in the following documents and the additional terms and definitions apply:

4.1
event-based metadata
metadata consisting of a timeline of zero or more events

5 Timed Events Resource πŸ”—

A Timed Events Resource :

NOTE —⁠ As long as the above constraints are satisfied, the Timed Events Resource could be an entirely static metadata document with no mention of time at all. Such a document would be viewed as defining a single "static" event that lasts for the duration of the Timed Events Track File into which it is mapped. This is useful because there are scenarios where such metadata makes sense on the IMF Composition timeline; for example, metadata that is applicable to how essence is to be played back but where the values of its properties are constant throughout.

6 Timed Events Ancillary Resource πŸ”—

A Timed Events Ancillary Resource shall be:

7 Event Scheme πŸ”—

7.1 General πŸ”—

An Event Scheme shall define a means of describing event-based metadata , potentially of a specific type or for a specific purpose.

The Event Scheme defined specified in Annex A may be used. Other documents may also define specify Event Scheme s.

An Event Scheme Instance shall comply with an Event Scheme and consist of:

An Event Scheme Instance shall describe a single timeline of events such that every point on this timeline can be unambiguously identified by a value X, where X is a real number indicating the time in seconds between the point on the timeline and the "origin" of seconds. the timeline.

NOTE 1 —⁠ This simply means that the events in the Timed Events Resource of the Event Scheme Instance could be plotted against a single time axis measured in seconds. As such, there is no ambiguity when the events are referenced using time in seconds. For example, when X is zero seconds this always refers to the "origin" of the timeline of events.

NOTE 2 —⁠ In For the avoidance of doubt, "X is a real number" means that in the general case, case X could be any real number including integers and fractions, positive and negative numbers. X could be zero, positive or negative.

NOTE 3 —⁠ This places no constraint on how time is represented inside the Timed Events Resource as long as: any internal representation can be converted to a number of seconds; if more than one time value/label is assigned to each time point then one is specified as the primary value to be used when referencing the metadata (either by the specification of the Timed Events Resource format or by the definition specification of the Event Scheme ). For example, if a Timed Events Resource format gives both an "offset" value and a "timecode" value for the start of each event then the Event Scheme using this format could define specify that the "offset" value is the "primary" value.

NOTE 4 —⁠ This places no constraint on how many simultaneous events the Timed Events Resource can describe. The requirement is simply that each point on the timeline can be uniquely identified β€” not that this time point must uniquely identify an event.

7.2 Definition Specification of an Event Scheme πŸ”—

The definition specification of an Event Scheme shall include (at the least):

Event Scheme URI

A URI that uniquely and globally identifies an Event Scheme .

An Event Scheme URI shall not include the space character ( U+0020 ).

Two Event Scheme URI s are identical if and only if they are identical as specified by the Comparing URI References procedure defined in W3C Namespaces in XML 1.0 .

NOTE 1 —⁠ The URI comparison algorithm specified is the same as specified for Application ID values in SMPTE ST 2067-2:2020 . The algorithm is case-sensitive, regardless of the case-sensitiveness of the underlying URI value. It is therefore advisable to make Event Scheme URI s lowercase to reduce the potential for confusion. It is also advisable to avoid the use of %-escaped characters wherever possible. However, if a space character is essential then this will need to be %-escaped (as %20 ) given the provision prohibiting the inclusion of the space character.

Parent Event Scheme URI s

Zero or more Event Scheme URI s that each identify an Event Scheme from which the full Event Scheme definition specification (except for its Event Scheme URI ) is inherited.

If one or more parent Event Scheme URI s are specified then any constraints specified as part of the child Event Scheme shall be compatible with, and apply in addition to, the constraints specified for all the parent Event Scheme s.

Timed Events Resource restrictions

Zero or more restrictions on the Timed Events Resource such as permitted character encoding, MIME type, data format, structure or contents.

NOTE 2 —⁠ These restrictions are likely to include a schema for structured data such as XML or JSON.

Use of Timed Events Ancillary Resource s
A statement defining specifying whether Timed Events Ancillary Resource s are required, permitted or prohibited.

If Timed Events Ancillary Resource s are to be used then the definition specification shall include:

Timed Events Ancillary Resource referencing
A mechanism for assigning IDs to the Timed Events Ancillary Resource s and for referencing them (using these IDs) from the Timed Events Resource .
Timed Events Ancillary Resource restrictions
Zero or more restrictions on the Timed Events Ancillary Resource s such as permitted MIME type, data format or contents.

8 Timed Events Track File πŸ”—

8.1 General πŸ”—

A Timed Events Track File shall contain an Event Scheme Instance where:

A Timed Events Track File shall comply with Clause 8 and with SMPTE ST 2067-2:2020 , 5.1 except that:

NOTE —⁠ Some properties of a Timed Events Track File are constrained by the Timed Events Virtual Track it is to be used with, as defined in 9.2.1 .

An example Timed Events Track File (MXF file) is provided in Element f (this is based on the Simple Scheme and is suitable for use with the Sequence elements defined in Annex B ).

8.2 Timed Events Resource mapping πŸ”—

The Timed Events Resource shall be Clip Wrapped as a single TimedEventsDataElement in a single Data Item of the Generic Container defined by SMPTE ST 379-2 .

The TimedEventsDataElement Essence Element Key shall be urn:smpte:ul:060e2b34.01020101.0d010301.17011001

File readers shall recognize and accept a TimedEventsDataElement even if the final byte of the Essence Element Key is 0x00 .

There will be The provisions of 8.2 mean that a single Data Track representing the Timed Events Resource both that is mapped to a Timed Events Track File will necessarily be represented by a single Data Track in the Material Package and a single Data Track in the Top-Level File Package. The properties For both of these Data Tracks are constrained as follows: Tracks:

For the Data Track in the Top-Level File Package Package, the Track Number shall be the final four bytes of the TimedEventsDataElement Essence Element Key used in the Timed Events Track File .

The Essence Container Label shall be as specified in Table 1 .

Table 1 β€” MXFGCTimedEventsTextStream label
Item Name Symbol Item UL
MXF-GC Timed Events Text Stream MXFGCTimedEventsTextStream urn:smpte:ul:060e2b34.0401010d.0d010301.02130102

8.3 Timed Events Ancillary Resource mapping πŸ”—

The provisions of SMPTE ST 410 shall apply.

For each Timed Events Ancillary Resource that is mapped to the MXF file there shall be one Generic Stream.

The Generic Stream Payload shall consist of the bytes of the Timed Events Ancillary Resource .

The entire Generic Stream Payload shall be carried in a single Generic Stream Data Element in a single Generic Stream Partition (no repetitions are permitted). Each Generic Stream Partition shall contain exactly one Timed Events Ancillary Resource .

KLV Fill packets shall not be permitted between the Generic Stream Partition Pack and the Generic Stream Data Element.

The Generic Stream Data Element key shall be urn:smpte:ul:060e2b34.0101010c.0d010509.01000000

All Generic Stream Partitions should be physically adjacent in the MXF file.

NOTE —⁠ The physical location and order of Generic Stream Partitions in the MXF file is not constrained. However, the recommendation is that file writers place all Generic Stream Partitions physically next to each other in the MXF file. File readers are expected to recognize and accept all Generic Stream Partitions regardless of their physical location and order in the MXF file.

8.4 Index Table πŸ”—

A Timed Events Track File shall contain an Index Table which shall consist of a single Index Table Segment.

In this Index Table Segment:

NOTE —⁠ In this Index Table Segment the Index Duration property is required: a value of 1 would be suitable.

Generic Streams shall not be indexed by the Index Table.

8.5 Random Index Pack (Informative) πŸ”—

As specified in SMPTE ST 410 , all Generic Stream Partitions are included in the Random Index Pack.

8.6 Essence Descriptors πŸ”—

8.6.1 General πŸ”—

The Top-Level File Package shall reference an instance of the TimedEventsTextDescriptor set (in accordance with 8.6.2 ) and this instance shall accurately describe the Timed Events Resource and the Event Scheme Instance it is a part of.

For each Timed Events Ancillary Resource that is mapped to the Timed Events Track File there shall be one instance of the TimedEventsAncillaryResourceSubDescriptor set (in accordance with 8.6.3 ) and this instance shall accurately describe the Timed Events Ancillary Resource .

All the TimedEventsAncillaryResourceSubDescriptor instances shall be referenced by the SubDescriptors property of the TimedEventsTextDescriptor instance.

8.6.2 TimedEventsTextDescriptor πŸ”—

The TimedEventsTextDescriptor set shall be: be as defined in Table 2 and Table 3 .

The TimedEventsTextDescriptor set shall be a subclass of the Generic Data Essence Descriptor set set.

The Data Essence Coding property (inherited from the Generic Data Essence Descriptor) shall be omitted.

Table 2 β€” Group/Set and Element ULs for TimedEventsTextDescriptor
Item Name Symbol Item UL
Timed Events Text Descriptor TimedEventsTextDescriptor urn:smpte:ul:060e2b34.027f0101.0d010101.01018113
Text Character Encoding TextCharacterEncoding urn:smpte:ul:060e2b34.0101010e.04030303.01000000
Text MIME Type TextMIMEType urn:smpte:ul:060e2b34.0101010e.04030303.02000000
Event Scheme URIs EventSchemeURIs urn:smpte:ul:060e2b34.0101010e.04030303.03000000

NOTE 1 —⁠ The value of byte 6 of the TimedEventsTextDescriptor UL to use in an MXF file will be determined according to SMPTE ST 377-1 (it will typically be 0x53 ).

Table 3 β€” Structure of TimedEventsTextDescriptor
Symbol Type Len Req? Meaning
TimedEventsTextDescriptor Set UL 16 Req Timed Events Text Descriptor
Length BER length var Req Set length
All items from the Generic Data Essence Descriptor set as defined in SMPTE ST 377-1
TextCharacterEncoding UTF16String var Req The name of the encoding used to convert the bytes of the Timed Events Resource into a sequence of characters
TextMIMEType UTF16String var Req The MIME type of the Timed Events Resource
EventSchemeURIs UTF16String var Req URIs identifying the Event Scheme s in use

Additional TextCharacterEncoding constraints:

  • The value of TextCharacterEncoding shall be treated in the same way as the encoding name ( EncName ) in the "XML declaration" used at the beginning of XML documents per W3C XML 1.0 .

NOTE 2 —⁠ As such, the expectation is that TextCharacterEncoding has a value from IANA Character Sets Registry (such as "UTF-8") and that file readers are not case sensitive when processing this value.

Additional TextMIMEType constraints:

NOTE 3 —⁠ As such, the expectation is that TextMIMEType has a value from IANA Media Types Registry .

Additional EventSchemeURIs constraints:

  • The value of EventSchemeURIs shall be a sequence of one or more Event Scheme URI s where a single space character ( U+0020 ) is used as a separator.
  • No Event Scheme URI shall be repeated in EventSchemeURIs .

NOTE 4 —⁠ The EventSchemeURIs property must be populated in accordance with 8.1 .

NOTE 5 —⁠ A file reader could choose to provide some limited amount of functionality if it supports at least one (but not all) of the Event Scheme s signalled by the EventSchemeURIs property.

8.6.3 TimedEventsAncillaryResourceSubDescriptor πŸ”—

The TimedEventsAncillaryResourceSubDescriptor set shall be: be as defined in Table 4 and Table 5 .

The TimedEventsAncillaryResourceSubDescriptor set shall be a subclass of the SubDescriptor set set.

Table 4 β€” Group/Set and Element ULs for TimedEventsAncillaryResourceSubDescriptor
Item Name Symbol Item UL
Timed Events Ancillary Resource Sub-Descriptor TimedEventsAncillaryResourceSubDescriptor urn:smpte:ul:060e2b34.027f0101.0d010101.01018114
Timed Events Ancillary Resource ID TimedEventsAncillaryResourceID urn:smpte:ul:060e2b34.0101010e.04030304.01000000
Timed Events Ancillary Resource MIME Type TimedEventsAncillaryResourceMIMEType urn:smpte:ul:060e2b34.0101010e.04030304.02000000
Timed Events Ancillary Resource Stream ID TimedEventsAncillaryResourceStreamID urn:smpte:ul:060e2b34.0101010e.04030304.03000000

NOTE 1 —⁠ The value of byte 6 of the TimedEventsAncillaryResourceSubDescriptor UL to use in an MXF file will be determined according to SMPTE ST 377-1 (it will typically be 0x53 ).

Table 5 β€” Structure of TimedEventsAncillaryResourceSubDescriptor
Symbol Type Len Req? Meaning
TimedEventsAncillaryResourceSubDescriptor Set UL 16 Req Timed Events Ancillary Resource Sub-Descriptor
Length BER length var Req Set length
All items from the abstract SubDescriptor set as defined in SMPTE ST 377-1
TimedEventsAncillaryResourceID UTF16String var Req ID of the Timed Events Ancillary Resource as used as a reference in the Timed Events Resource
TimedEventsAncillaryResourceMIMEType UTF16String var Req The MIME type of the Timed Events Ancillary Resource
TimedEventsAncillaryResourceStreamID UInt32 4 Req The Stream ID of the Generic Stream carrying the bytes of the Timed Events Ancillary Resource

Additional TimedEventsAncillaryResourceID constraints:

  • The value of TimedEventsAncillaryResourceID shall be unique within the TimedEventsAncillaryResourceSubDescriptor instances included within the Timed Events Track File .

Additional TimedEventsAncillaryResourceMIMEType constraints:

NOTE 2 —⁠ As such, the expectation is that TimedEventsAncillaryResourceMIMEType has a value from IANA Media Types Registry (just like TextMIMEType ).

Additional TimedEventsAncillaryResourceStreamID constraints:

  • This linkage to a Generic Stream (by means of its Stream ID) shall confer ownership as defined in SMPTE ST 410 .

9 Composition πŸ”—

9.1 General πŸ”—

A Composition, as defined in SMPTE ST 2067-3 , shall contain zero or more Timed Events Virtual Track s in accordance with 9.2 .

9.2 Timed Events Virtual Track πŸ”—

9.2.1 Sequence elements πŸ”—

9.2.1.1 General πŸ”—

A Timed Events Virtual Track shall consist of one or more Sequence elements. These Sequence elements shall conform to a single Sequence element definition in accordance with 9.2.1.2 . Each Sequence element shall contain one or more Resource elements of type TrackFileResourceType (as defined in SMPTE ST 2067-3 ) with each Resource element referencing a Timed Events Track File .

The Sequence elements defined in Annex B may be used. Other documents may also define suitable Sequence elements.

9.2.1.2 Definition of a Timed Events Virtual Track Sequence element πŸ”—

The definition of a Sequence element for a Timed Events Virtual Track shall include (at the least):

Sequence element Schema
The XML Schema for the Sequence element: this shall be based on the SequenceType as defined in SMPTE ST 2067-3 .
Permitted Event Scheme s
The Event Scheme s permitted for use by the Timed Events Track File (s) referenced by the Resource element(s) of the Sequence element.
Event-based metadata purpose/usage

Any additional constraints on the purpose or usage of the event-based metadata .

NOTE 1 —⁠ Two Sequence elements could differ purely in terms of their XML element name and their purpose/usage, as is the case for a Timed Text Virtual Track (per SMPTE ST 2067-2:2020 , 6.3.3).

Additional SubDescriptors

Specification of zero or more additional SubDescriptor sets for use by Timed Events Track File (s) referenced by the Resource element(s) of the Sequence element.

NOTE 2 —⁠ These SubDescriptor sets can expose/summarize aspects of the event-based metadata and will appear in the CPL: this might aid with processing the Composition or Timed Events Virtual Track (s).

Timing details in Timed Events Track File MXF metadata

Constraints on certain timing details in the Header Metadata of Timed Events Track File (s) referenced by the Resource element(s) of the Sequence element. These constraints shall cover (at the least):

  • The Edit Rate property of the Data Tracks and the Sample Rate of the TimedEventsTextDescriptor
  • The Duration properties of the components of the Data Tracks and the Container Duration property of the TimedEventsTextDescriptor

NOTE 3 —⁠ These properties are not needed by a Timed Events Track File reader but generally need to be populated when creating an MXF file; the Sequence element definition provides use case specific guidance.

Timing details of Resource elements

Constraints on the timing details of the Resource element(s) of the Sequence element. These constraints shall cover (at the least):

  • EditRate
  • IntrinsicDuration

NOTE 4 —⁠ These properties of a Resource element could be related to the properties of the referenced Timed Events Track File and/or (in the case of the Resource EditRate ) to properties of other Virtual Tracks in the Composition.

NOTE 5 —⁠ The Native Start Point (the start of the playable region of the Resource element when the Resource element's EntryPoint is zero) is aligned with the start of the referenced Timed Events Track File and so with the zero point of the timeline of events of the Event Scheme Instance it contains (as described by the Timed Events Resource ).

Edit Unit access to the event-based metadata

Specification of how the event-based metadata is to be processed (interpreted, rendered or similar) when it is accessed at arbitrary offsets using the Edit Units of the Timed Events Virtual Track . Particularly important in cases where: there are gaps in the timeline of the event-based metadata ; access is made part way through an event; the Edit Units of the Timed Events Virtual Track are different to the time references used in the Timed Events Resource (s).

Guidance on sparse encoding of event-based metadata
Guidance for the situation where there is no event-based metadata associated with a particular portion of the Composition timeline (a comparable situation for Timed Text Essence is described in SMPTE ST 2067-2:2020 , Annex D).

9.2.2 Homogeneous Essence πŸ”—

Within a given Timed Events Virtual Track , the following properties of the TimedEventsTextDescriptor instances in the referenced Timed Events Track File s shall remain constant:

  • TextCharacterEncoding
  • TextMIMEType
  • EventSchemeURIs

9.2.3 TimedEventsVirtualTrackParameterSet πŸ”—

The ExtensionProperties element of the Composition Playlist shall include zero or one instances of the TimedEventsVirtualTrackParameterSet element for each Timed Events Virtual Track in the Composition.

The TimedEventsVirtualTrackParameterSet element shall be in accordance with Element a (with the prose element taking precedence in the event of a conflict) which shall be an XML Schema in accordance with W3C XML Schema Part 1: Structures .

The child elements of the TimedEventsVirtualTrackParameterSet element shall be as follows:

Id
The Id element shall identify the TimedEventsVirtualTrackParameterSet instance. No two TimedEventsVirtualTrackParameterSet instances shall have the same Id value.
TrackId
The value of the TrackId element shall be the TrackId (as defined in SMPTE ST 2067-3 ) of the Timed Events Virtual Track described by the TimedEventsVirtualTrackParameterSet instance.
TrackRelationship

The TrackRelationship element may be used to describe how the Timed Events Virtual Track is related to another Virtual Track in the same Composition.

Within a TimedEventsVirtualTrackParameterSet instance, if there are multiple TrackRelationship elements they shall each refer to a different Virtual Track (by means of the RelatedTrackId child element).

[Other/wildcard properties]
Placeholder for future or application-specific extensions

The child elements of the TrackRelationship element shall be as follows:

RelatedTrackId
The value of the RelatedTrackId element shall be the TrackId (as defined in SMPTE ST 2067-3 ) of the Virtual Track to which the Timed Events Virtual Track is related. The related Virtual Track shall be in the same Composition as the Timed Events Virtual Track .
RelationshipKind
The value of each RelationshipKind element shall be a URI identifying the nature of the relationship between the Timed Events Virtual Track and the Virtual Track identified by RelatedTrackId .
[Other/wildcard properties]
Placeholder for future or application-specific extensions

Annex A
Simple Scheme (Normative) πŸ”—

A.1 Overview (Informative) πŸ”—

The Simple Scheme is an Event Scheme . Use of the Simple Scheme is optional.

Users of the plug-in defined in this document will often have pre-existing Timed Events Resource s that capture the event-based metadata they wish to add to a Composition. If not, the Simple Scheme can be used as a basis for creating Timed Events Resource s.

The Simple Scheme can be used as-is or a use case specific Event Scheme can be defined specified that:

Example Simple Scheme Timed Events Resource s are provided in Element c (XML) and Element e (JSON). These documents illustrate the same data as both XML and JSON. Many alternative designs are possible for data of this nature: these documents are intended purely as illustrative examples without recommending the design used. Schemas for the extensions used in these documents are not provided but would need to be made available as part of an implementation.

An example Timed Events Track File (MXF file) is provided in Element f (this is based on the Simple Scheme and is suitable for use with the Sequence elements defined in Annex B ).

To add this Simple Scheme event-based metadata to a Composition one option is to choose one of the Sequence elements defined in Annex B . An alternative would be to define a new Sequence element and make it specific to a narrow event-based metadata use case.

A.2 General πŸ”—

The Simple Scheme shall be an Event Scheme with the following definition: specification:

Event Scheme URI
http://www.smpte-ra.org/ns/2067-206/2023/simple-scheme
Parent Event Scheme URI s
None
Timed Events Resource restrictions
The Timed Events Resource shall be either XML in accordance with Clause A.3 or JSON in accordance with Clause A.4
Use of Timed Events Ancillary Resource s
Zero or more Timed Events Ancillary Resource s are permitted
Timed Events Ancillary Resource referencing
Not specified
Timed Events Ancillary Resource restrictions
None

A.3 XML Timed Events Resource πŸ”—

A Simple Scheme XML Timed Events Resource shall:

An example Simple Scheme XML Timed Events Resource is provided in Element c .

A.4 JSON Timed Events Resource πŸ”—

A Simple Scheme JSON Timed Events Resource shall:

NOTE —⁠ The expectation is that a Simple Scheme JSON Timed Events Resource conforms to Element d (with the prose element taking precedence in the event of a conflict) which is a JSON Schema in accordance with JSON Schema: A Media Type for Describing JSON Documents .

An example Simple Scheme JSON Timed Events Resource is provided in Element e .

A.5 Timed Events Resource properties πŸ”—

The document-level properties shall be as follows:

id
A globally unique identifier (URI) for the Timed Events Resource .
editRate
Event timing shall be quantized in multiples of 1 editRate seconds.
objects

List of object entities that may be referenced by event s and/or used to group event s.

NOTE 1 —⁠ The means of creating links between object s and event s is application-specific.

events
List of event entities each of which defines an event on the timeline.
[Other/wildcard properties]
Placeholder for future or application-specific extensions

The object properties shall be as follows:

id

An identifier for the object that shall be unique within the objects list. The identifier shall not include the comma character ( U+002C ).

NOTE 2 —⁠ These restrictions on the use of the comma character allow it to be used as a separator in lists of id s for object s or event s.

[Other/wildcard properties]
Placeholder for future or application-specific extensions

The event properties shall be as follows:

id
An identifier for the event that shall be unique within the events list. The identifier shall not include the comma character ( U+002C ).
startCount
The event shall begin at the instant that is startCount editRate seconds after the zero point of the events timeline.
endCount
The event shall end at the instant that is endCount editRate seconds after the zero point of the events timeline.
[Other/wildcard properties]
Placeholder for future or application-specific extensions

The following additional constraints shall apply:

The startCount and endCount properties are both optional:

NOTE 3 —⁠ This model defines the timing of events differently to some other systems such as: some that use timecodes; the application of certain Markers in an IMF CPL. Some of those systems identify the Edit Units (often video frames) to which an event applies, meaning that every event has a minimum duration of one Edit Unit. In the model defined in this document the instant at which an event starts, and the instant at which it ends, can be specified and so an event can be of zero duration.

NOTE 4 —⁠ Negative values, positive values, and the value zero are all permitted for startCount and endCount .

NOTE 5 —⁠ The values of startCount and endCount could be very large and so are expressed as strings to prevent issues inadvertently arising when parsing the Timed Events Resource . For example, silent corruption can occur in JavaScript when numbers exceeding a platform-specific threshold are handled without due care.

NOTE 6 —⁠ There are no constraints on how events are to cover the events timeline. For example, the following are all permitted: zero-length events; overlapping events; gaps between events.

Annex B
Sequence elements for use with the Simple Scheme (Normative) πŸ”—

B.1 Overview (Informative) πŸ”—

SimpleSchemeGenericTimedEventsSequence and SimpleSchemeMediaTimedEventsSequence are Sequence elements that can be used to add Simple Scheme event-based metadata to a Composition. The use of these Sequence elements is optional.

SimpleSchemeMediaTimedEventsSequence is designed for event-based metadata that relates directly to the essence of one or more of the Virtual Tracks in the same Composition.

SimpleSchemeGenericTimedEventsSequence can be used for any Simple Scheme event-based metadata . In some cases this might utilize Timed Events Resource s with an editRate value unrelated to the Edit Rate of anything else in the same Composition. Care needs to be taken when creating the Timed Events Resource s to ensure that the event-based metadata can be appropriately synchronized with the rest of the Composition it is being added to.

Both Sequence elements can be used with either XML or JSON Simple Scheme Timed Events Resource s. However, all Timed Events Resource s referenced from a Timed Events Virtual Track must be either XML or JSON in order to comply with 9.2.2 .

B.2 General πŸ”—

SimpleSchemeGenericTimedEventsSequence and SimpleSchemeMediaTimedEventsSequence shall be Sequence elements in accordance with 9.2.1 and shall be defined as follows:

Sequence element Schema
The Sequence elements shall be in accordance with Element g (with the prose element taking precedence in the event of a conflict) which shall be an XML Schema in accordance with W3C XML Schema Part 1: Structures .
Permitted Event Scheme s
The Simple Scheme and any Event Scheme that includes the Simple Scheme Event Scheme URI in its Parent Event Scheme URI s.
Event-based metadata purpose/usage

For both Sequence elements: all Timed Events Resource s referenced from a Timed Events Virtual Track shall have the same value of editRate (a Simple Scheme document property).

Additionally, for SimpleSchemeMediaTimedEventsSequence : the event-based metadata shall relate directly to the essence of one or more of the Virtual Tracks in the same Composition. Specifically, the value of editRate (a Simple Scheme document property) of the Timed Events Resource s shall be an integer multiple (including one) of the Edit Rate of at least one of the Virtual Tracks in the same Composition.

NOTE —⁠ Typically all the Resource elements that form a Virtual Track have the same value for EditRate (a property defined in SMPTE ST 2067-3 ) and so this can be taken as the Edit Rate of the Virtual Track.

Additional SubDescriptors
None
Timing details in Timed Events Track File MXF metadata
  • Edit Rate property of the MXF Data Tracks and the Sample Rate of the MXF TimedEventsTextDescriptor : equal to the value of the editRate (a Simple Scheme document property) of the Timed Events Resource .
  • Duration properties of the components of the MXF Data Tracks and the Container Duration property of the MXF TimedEventsTextDescriptor : the value of each property (if present) shall be a large value relative to both (a) the duration of the event-based metadata and (b) the duration of any Composition the Timed Events Track File could be used with.
Timing details of Resource elements
  • Resource EditRate (a property defined in SMPTE ST 2067-3 ):
    • For SimpleSchemeGenericTimedEventsSequence : the Resource EditRate shall be equal to the Edit Rate of the Main Image Virtual Track.
    • For SimpleSchemeMediaTimedEventsSequence : the Resource EditRate shall be equal to the Edit Rate property of the MXF Data Tracks in the referenced Timed Events Track File (and so equal to the value of the editRate (a Simple Scheme document property) of the Timed Events Resource ).
  • Resource IntrinsicDuration (a property defined in SMPTE ST 2067-3 ): shall be equal to the Duration properties of the components of the MXF Data Tracks and the Container Duration property of the MXF TimedEventsTextDescriptor in the referenced Timed Events Track File .
Edit Unit access to the event-based metadata

For SimpleSchemeGenericTimedEventsSequence : use case specific guidance should be provided.

For SimpleSchemeMediaTimedEventsSequence : the Virtual Track(s) to which the event-based metadata directly relates shall be signalled using the mechanism defined in 9.2.3 in order to aid in appropriate processing of the metadata.

Guidance on sparse encoding of event-based metadata
A Timed Events Track File containing a Timed Events Resource representing an empty timeline shall be used for unpopulated portions of the Composition timeline in a manner comparable to SMPTE ST 2067-2:2020 , Annex D.

Additional elements πŸ”—

The following are the non-prose elements of this document:

  1. a . TimedEventsVirtualTrackParameterSet: XML Schema (normative). file: < TimedEventsVirtualTrackParameterSet.xsd >.
  2. b . Simple Scheme: Timed Events Resource: XML Schema (normative). file: < simple_scheme.TimedEventsResource.schema.xsd >.
  3. c . Simple Scheme: Timed Events Resource: XML example (informative). file: < simple_scheme.TimedEventsResource.example.xml >.
  4. d . Simple Scheme: Timed Events Resource: JSON Schema (informative). file: < simple_scheme.TimedEventsResource.schema.json >.
  5. e . Simple Scheme: Timed Events Resource: JSON example (informative). file: < simple_scheme.TimedEventsResource.example.json >.
  6. f . Simple Scheme: Timed Events Track File: MXF example (informative). file: < simple_scheme.TimedEventsTrackFile.example.mxf >.
  7. g . Simple Scheme: Sequence elements: XML Schema (normative). file: < simple_scheme.sequence_elements.xsd >.

Bibliography πŸ”—