Descriptors [MPEG Semantics]
Descriptors are (generally) optional, variable-length data elements that can add standards-defined or user-defined data elements to MPEG-2 private table sections.
The MPEG-2 specification (ISO/IEC 13818) defines many descriptors, as do various specifications published by ATSC, DVB, SCTE and ARIB. Some of these specifications mandate that a particular descriptor be found at a specific location in a specified private table. Generally, there are few restrictions on descriptors, to the extent that DVB-, ARIB- or SCTE-specified descriptors can be found in ATSC private tables, and vice-versa.
Every descriptor has the same format. The first byte is the descriptor tag, followed the descriptor_length with a value of zero to 255 that specifies how many bytes are in the descriptor to follow, then the descriptor's data.
Generally, tables that permit descriptors have two or more locations to place descriptors, which are called "descriptor loops", amounting to an "inner" and "outer" descriptor loop.
Note: there is no specified order in which descriptors must or should appear with a particular descriptor loop, and there is no
significance to the order that descriptors appear within a particular descriptor loop.
See: Descriptors Generally
This page was last modified on October 13, 2009 to provide clarification about the order of descriptors within a loop.