This Administrative Guideline is a collection of guidelines and policies that are intended to help SMPTE Engineering Document authors and editors when defining Universal Labels.
This Administrative Guideline augments the ISO Directives with information and recommendations to be used when writing SMPTE Engineering Documents.
AG-02 (Engineering Documents) describes file names, dates and file packages for documents in development. AG16 describes the Styles that are recommended for authoring Engineering Documents.
Universal Labels are used in MXF documents in several contexts. Each of these has particular requirements in terms of layout and presentation of the label. The list below is expanded in the following sections
This document recommends UL styles that minimize errors for implementers copying ULs from MXF documents. The trend toward software processes for implementation and validation make this a priority over the original MXF style of using Word tables and long prose.
In the current Engineering Document templates, using Arial Bold 9 point for table headings and Arial undecorated 8 point for table cells reduces the chance of unwanted line breaks without the text being unnecessarily small.
The example below shows the preferred way for defining ULs in MXF documents. It is a modified version of Table 2 in ST 2094-2.
| Item Name | Symbol | Kind | Item UL |
|---|---|---|---|
| Color Transform Sets | ColorTransformSets | NODE | urn:smpte:ul:060e2b34.027F0101.05310000.00000000 |
| DMCVT Generic Sets | DMCVTGenericSets | NODE | urn:smpte:ul:060e2b34.027F0101.05310100.00000000 |
| DMCVT Generic Set 1 | DMCVTGenericSet1 | LEAF | urn:smpte:ul:060e2b34.027F0101.05310101.00000000 |
| DMCVT Application Sets | DMCVTApplicationSets | NODE | urn:smpte:ul:060e2b34.027F0101.05310200.00000000 |
Extra explanatory free-form text outside the summary table is encouraged to clearly define the semantics of the UL.
The following example shows a UL description from SMPTE ST 382-4 followed by the preferred alternative representation. Note that in the preferred representation, the second table is no longer part of the UL description and only serves to provide the common names of the AAC profiles. In most cases a second table is not required.
| Byte No. | Description | Value (hex) | Meaning |
|---|---|---|---|
| 1 | Object Identifier | 06h | |
| 2 | Label size | 0eh | |
| 3 | Designator | 2bh | ISO, ORG |
| 4 | Designator | 34h | SMPTE |
| 5 | Registry Category Designator | 04h | Labels |
| 6 | Registry Designator | 01h | Labels Registry |
| 7 | Structure Designator | 01h | Labels Structure |
| 8 | Version Number | 0dh | Version of the Registry |
| 9 | Parametric | 04h | Node used to define parametric data |
| 10 | Sound Essence | 02h | Identifies Sound Essence |
| 11 | Sound Coding Characteristics | 02h | Identifies Sound Coding Characteristics |
| 12 | Compressed Sound Coding | 02h | Identifies Compressed Sound Coding |
| 13 | MPEG Audio Compression | 04h | Identifies MPEG Audio Compression |
| 14 | MPEG Audio Coding Details 1 | xxh | See Table 6 |
| 15 | MPEG Audio Coding Details 2 | yyh | See Table 6 |
| 16 | MPEG Audio Coding Details 3 | 00h | Reserved |
The values for bytes 14 and 15 of the Label identify the usage of AAC and shall be as enumerated in Example – Original Table :
| MPEG Standard | AAC General Name | Value of Byte 14 (hex) | Value of Byte 15 (hex) | AAC Profile |
|---|---|---|---|---|
| MPEG-2 AAC | LC | 03h | 01h | Low Complexity profile MPEG-2 AAC |
| MPEG-2 AAC | LC + SBR | 03h | 02h | Low Complexity profile MPEG-2 AAC+SBR |
| MPEG-4 AAC | AAC LC | 04h | 01h | MPEG-4 AAC Profile |
| MPEG-4 AAC | AAC LC + SBR | 04h | 02h | MPEG-4 High Efficiency AAC Profile |
| MPEG-4 AAC | AAC + SBR + PS | 04h | 03h | MPEG-4 High Efficiency AAC v2 Profile |
AAC “General Name” is the commonly used terminology.
| Item Name | Symbol | Kind | Item UL |
|---|---|---|---|
| MPEG 2 Advanced Audio Coding | MPEG_2_Advanced_Audio_Coding | NODE | urn:smpte:ul:060e2b34.0401010d.04020202.04030000 |
| MPEG 2 LC AAC | MPEG_2_LC_AAC | LEAF | urn:smpte:ul:060e2b34.0401010d.04020202.04030100 |
| MPEG 2 AAC SBR | MPEG_2_AAC_SBR | LEAF | urn:smpte:ul:060e2b34.0401010d.04020202.04030200 |
| MPEG 4 Advanced Audio Coding | MPEG_4_Advanced_Audio_Coding | NODE | urn:smpte:ul:060e2b34.0401010d.04020202.04040000 |
| MPEG 4 AAC Profile | MPEG_4_AAC_Profile | LEAF | urn:smpte:ul:060e2b34.0401010d.04020202.04040100 |
| MPEG 4 High Efficiency AAC Profile | MPEG_4_High_Efficiency_AAC_Profile | LEAF | urn:smpte:ul:060e2b34.0401010d.04020202.04040200 |
| MPEG 4 High Efficiency AAC v2 Profile | MPEG_4_High_Efficiency_AAC_v2_Profile | LEAF | urn:smpte:ul:060e2b34.0401010d.04020202.04040300 |
All labels are Leaves of urn:smpte:ul:060e2b34.0401010d.04020202.04xxyyzz MPEG Audio Compression
| MPEG Standard | AAC General Name | AAC Profile |
|---|---|---|
MPEG_2_LC_AAC | LC | Low Complexity profile MPEG-2 AAC |
MPEG_2_AAC_SBR | LC + SBR | Low Complexity profile MPEG-2 AAC+SBR |
MPEG_4_AAC_Profile | AAC LC | MPEG-4 AAC Profile |
MPEG_4_High_Efficiency_AAC_Profile | AAC LC + SBR | MPEG-4 High Efficiency AAC Profile |
MPEG_4_High_Efficiency_AAC_v2_Profile | AAC + SBR + PS | MPEG-4 High Efficiency AAC v2 Profile |
AAC “GeneralName” is the commonly used terminology.
There is more information to be conveyed when defining groups and sets. For this reason, a two-table approach is recommended for readability.
The first table shall be identical in style to the table AG24-2.2.1 above. The purpose of this table is to enumerate the full UL for each property in the group.
The second table shall be indexed by the Item Name from the first table (identical in spelling, case and whitespace). The purpose of the second table is to define the syntax and semantics of properties in the group.
Two worked examples are shown below. The example marked ‘preferred’ is preferred since it is facilitating text search and checking:
| Item Name | Type | Len | Item UL | Req ? | Meaning | Default |
|---|---|---|---|---|---|---|
| AAC SubDescriptor | Set UL | 16 | See Table 2 | Req | Advanced Audio Coding SubDescriptor | |
| Length | BER Length | 4 | Req | Set length | ||
| AAC Sampling Frequency | Uint8 | 1 | 060e2b34 0101010e 04020403 01040000 | Opt | Low order 4 bits of Sampling Frequency Index. Upper 4 bits are zeros *1 | |
| AAC Channel Configuration | Uint8 | 1 | 060e2b34 0101010e 04020403 01030000 | Opt | Low order 4 bits of Channel Configuration. Upper 4 bits are zeros *2 | |
*1 ISO/IEC 13818-7 (MPEG-2 AAC) and ISO/IEC 14496-3 (MPEG-4 AAC).
*2 ISO/IEC 13818-7 (MPEG-2 AAC) and ISO/IEC 14496-3 (MPEG-4 AAC) ISO/IEC 14496-3:2009/Amd 4 defines the extended code points up to 14.
6.2 Key for the AAC SubDescriptor
The key (UL) for the AAC SubDescriptor shall be as defined in Table 2.
| Byte No. | Description | Value (hex) | Meaning |
|---|---|---|---|
| 1-7 | Defined in the Structural Header Metadata Implementation section of SMPTE ST 377-1 | ||
| 8 | Register Version | 01h | Version of the Registry |
| 9-13 | Defined in the Structural Header Metadata Implementation section of SMPTE ST 377-1 | ||
| 14 | Set Kind (1) | 01h | AAC SubDescriptor |
| 15 | Set Kind (2) | 78h | |
| 16 | Reserved | 00 | Reserved |
| Item Name | Symbol | Kind | Item UL |
|---|---|---|---|
| AAC SubDescriptor [1,2.3] | AACSubDescriptor | LEAF | urn:smpte:ul:060e2b34.027f0101.0d010101.01017800 |
| AAC Sampling Frequency | AACSamplingFrequency | LEAF | urn:smpte:ul:060e2b34.0101010e.04020403.01040000 |
| AAC Channel Configuration | AACChannelConfiguration | LEAF | urn:smpte:ul:060e2b34.0101010e.04020403.01030000 |
SMPTEST377-1definesthebytestructureofSetsandGroups
AACSubDescriptor version byte is set to 1 according to SMPTE policy
| Symbol | Type | Len | Req ? | Meaning | Default |
|---|---|---|---|---|---|
| AACSubDescriptor | Set UL | 16 | Req | Advanced Audio Coding SubDescriptor | |
| Length | BER Length | 4 | Req | Set length | |
| All items from the abstract SubDescriptor as specified in SMPTE ST 377-1 annex B.3 | |||||
| AACSamplingFrequency | UInt8 | 1 | Opt | Low order 4 bits of Sampling Frequency Index. Upper 4 bits are zeros | |
| AACChannelConfiguration | UInt8 | 1 | Opt | Low order 4 bits of Channel Configuration. Upper 4 bits are zeros | |
[optional] the length in Bytes of the value field of the KLV representation of the element provided as helper information to the reader. If this optional column is present, then the value shall match the value in the register submission for that data type – it is duplicate information in an MXF document.
When defining data types, the length of the new data type shall be provided.
Extra explanatory free-form text outside the summary table is encouraged to clearly
In an MXF document is it often necessary to refer to existing SMPTE ULs. Many legacy documents are inconsistent in the way that this is done. Specifically, some legacy documents have been inconsistent in the case of characters and whitespace making document searches unreliable.
The Symbol of an element has consistent character case, has no whitespace and is not subject to line-break formatting issue. This makes it easy for implementers to search for in document. Document authors should verify that the publication version of documents have not had the character case or whitespace of symbols altered by non-technical editors.
Visually identifying symbols can be made easier for readers by creating a word style with the following properties only:
This style can then be applied to all Symbols and other formatting such as Bold, Size, Color will be inherited accordingly. MXF document should use the element Symbol in body text to refer to an element. If clarity is required, the following phrasing may be used:
The element with symbol AACSubDescriptor should ...
It may be helpful to the implementation community to know which ULs are defined in any given document. An optional informative Annex may be provided that includes informative sections for each of the register submissions made in the document. Each section should clearly indicate which register the XML applies to and should contain the mature submission that was entered into the register. An example from ST 382-4 is given below.
All XML should be presented in a monospaced font and indented with spaces. Color highlighting to assist readability is optional.
Text indicating that in case of conflict with the body text of the main document, then the body text is considered the definitive reference.
The XML document below is the mature submission for the Elements Register. In case of conflict with the body text of this document, the body text should be considered the normative reference.
<!-- Metadata tags to support XML file editing -->
<!-- -->
<!-- Please fill these in if you edit this XML file -->
<!-- author=Oliver Morgan and Patrick Waddell -->
<!-- edit_date= 20161201-->
<!-- summary_of_edit= add elements for AAC SubDescriptor-->
<!-- author=Patrick Waddell -->
<!-- edit_date= 20170210-->
<!-- summary_of_edit= minor edits for Registrar-->
<!-- -->
<!-- DO NOT EDIT THIS TAG -->
<!-- master_commit_tag=v000000075 -->
<!-- DO NOT EDIT THIS TAG -->
<ElementsRegister xmlns="http://www.smpte-ra.org/schemas/335/2012">
<Entries>
<Entry>
<Register>Elements</Register>
<NamespaceName>http://www.smpte-ra.org/reg/335/2012</NamespaceName>
<Symbol>AACChannelConfiguration</Symbol>ss
<UL>urn:smpte:ul:060e2b34.0101010e.04020403.01030000</UL>
<Kind>LEAF</Kind>
<Name>AAC Channel Configuration</Name>
<Definition>Low order 4 bits of Channel Configuration. Upper 4 bits are zeros</Definition>
<DefiningDocument>SMPTE ST 381-4</DefiningDocument>
<IsDeprecated>false</IsDeprecated>
<ContextScope>DefinedContext</ContextScope>
<Type>urn:smpte:ul:060e2b34.01040101.01010100.00000000</Type>
</Entry>
<Entry>
<Register>Elements</Register>
<NamespaceName>http://www.smpte-ra.org/reg/335/2012</NamespaceName>
<Symbol>AACSamplingFrequency</Symbol>
<UL>urn:smpte:ul:060e2b34.0101010e.04020403.01040000</UL>
<Kind>LEAF</Kind>
<Name>AAC Sampling Frequency</Name>
<Definition>Low order 4 bits of Sampling Frequency Index. Upper 4 bits are zeros</Definition>
<DefiningDocument>SMPTE ST 381-4</DefiningDocument>
<IsDeprecated>false</IsDeprecated>
<ContextScope>DefinedContext</ContextScope>
<Type>urn:smpte:ul:060e2b34.01040101.01010100.00000000</Type>
</Entry>
</Entries>
</ElementsRegister>