Proposed New Metadata Messages
Last updated
Was this helpful?
Last updated
Was this helpful?
<vancData>
Element (CEA-708 & SCTE-104)Initial Implementation:
Location: Video Frame Metadata
Legacy close captioning data and SCTE triggers are passed as NDI metadata by encoding the corresponding SDI vertical ancillary data packets directly as XML.
Note that this method should not be used as a general solution for transiting SDI Ancillary data via NDI. Still, it is used in this case because workflows using these protocols are very SDI-centric, and this method is supported by existing equipment and workflows.
This mechanism should NOT be used to tunnel arbitrary SDI ancillary data which can readily be represented by XML.
<vancData>
Attributesversion
The <vancData>
element must have a version attribute.
The version attribute supported by this standard is "1.0"
<vancData>
ChildrenvancPacket
This element contains the details for one ancillary data packet. Any number of vancPacket elements may be contained within one vancData element
vancPacket
Element
The vancPacket
element provides details for one ancillary data packet. The ancillary packet data is base64 encoded while the ancillary packet header details are included as attributes of the vancPacket element.
DID and SDID values and ancillary data content are per SMPTE standards ST-334 (CEA-708) and ST-2010 (SCTE-104)
The following ancillary data packet types are currently supported:
CEA-708 close caption: did="97" sdid="1"
SCTE-104 trigger: did="65" sdid="7"
vancPacket
Attributes
did
The ancillary packet DID (Data Identifier)
sdid
The ancillary packet SDID (Secondary Data Identifier)
line
The line number the ancillary data packet was received on
<ndi_metadata type="midi">
ElementLocation: Metadata Frame
Initial NDI Version: 6.1
<ndi_metadata type="midi">
Childrendata
Hexidecimal representation of a MIDI message. Data is read left to right (eg: 0x90 is the first byte transmitted and 0x20 is the last byte to be trasmitted)
<ndi_metadata type="dmx">
ElementLocation: Metadata Frame
Initial NDI Version: 6.1
<ndi_metadata type="dmx">
ChildrenUniverse
DMX transmit channel. Multiple universe elements are allowed
Universe
Attributes
id
DMX transmit channel: 1 (first channel) to the capacity of the DMX controller
Universe
Children
Stream
Represents DMX data. Multiple stream elements are allowed
Stream
Children
Address
Starting DMX channel: 1 to 512
Data
Hexidecimal representation of DMX data. Data is read left to right (eg: 0x01 is the first byte transmitted for universe 1, address 1
Initial Implementation: Various standards bodies
Location: Metadata Frame
Modern captioning solutions are migrating to a variety of XML based timed text formats such as:
TTML1
SDP-US
IMSC1
SMPTE-TT
EBU-TT
CFF-TT
As these formats are natively XML they can be easily incorporated into an NDI stream as metadata. As a transport protocol, NDI does not natively prefer any one of these standards over the others. The properly formed XML conforming to one (or more) of these standards should simply be sent as an NDI metadata frame, optionally as the child of an <ndi_metadata_group>
element if for some reason more than one element needs to be sent in the same metadata frame.
As a general rule, it is suggested that applications sending timed-text captions use the minimum set of features necessary for full operation. Receivers should be able to process any Well Formed XML, ignoring any elements or attributes they do not currently implement.
If you are interested in supporting any of the timed-text captioning solutions in real-world workflows, the NDI team would be happy to coordinate with you to help ensure consistency and interoperability across the NDI ecosystem.
Initial Implementation:
Initial Implementation:
W3C has a good , including links to many of the specifications.