8. Metadata Information
This section preserves the RFC text for APV, including bitstream syntax, syntax element processing, decoding and parsing processes, metadata, profiles, levels, bands, raw bitstream format, and implementation references.
Original RFC Text
8. Metadata Information
8.1. Metadata Payload
syntax code | type
--------------------------------------------------------------|-----
metadata_payload(payloadType, payloadSize){ |
if(payloadType == 4){ |
metadata_itu_t_t35(payloadSize) |
} |
else if(payloadType == 5){ |
metadata_mdcv(payloadSize) |
} |
else if(payloadType == 6){ |
metadata_cll(payloadSize) |
} |
else if(payloadType == 10){ |
metadata_filler(payloadSize) |
} |
else if(payloadType == 170){ |
metadata_user_defined(payloadSize) |
} |
else{ |
metadata_undefined(payloadSize) |
} |
byte_alignment() |
} |
Figure 28: metadata_payload() syntax code
The syntax and semantics of each type of metadata are defined in
Section 8.2.
8.2. List of Metadata Syntax and Semantics
8.2.1. Filler Metadata
syntax code | type
--------------------------------------------------------------|-----
metadata_filler(payloadSize){ |
for(i = 0; i < payloadSize; i++){ |
ff_byte | f(8)
} |
} |
ff_byte
is a byte equal to 0xFF.
8.2.2. Recommendation ITU-T T.35 Metadata
This metadata contains information registered as specified in
[ITUT-T35].
syntax code | type
--------------------------------------------------------------|-----
metadata_itu_t_t35(payloadSize){ |
itu_t_t35_country_code | b(8)
readSize = payloadSize - 1 |
|
if(itu_t_t35_country_code == 0xFF){ |
itu_t_t35_country_code_extension | b(8)
readSize-- |
} |
|
for(i = 0; i < readSize; i++){ |
itu_t_t35_payload[i] | b(8)
} |
} |
Figure 29: metadata_itu_t_t35() syntax code
itu_t_t35_country_code
MUST be a byte having the semantics of country code as specified
in Annex A of [ITUT-T35].
itu_t_t35_country_code_extension
MUST be a byte having the semantics of country code as specified
in Annex B of [ITUT-T35].
itu_t_t35_payload[i]
MUST be a byte having the semantics of data registered as
specified in [ITUT-T35].
The terminal provider code and terminal provider oriented code as
specified in [ITUT-T35] MUST be contained in the first one or more
bytes of the itu_t_t35_payload. Any remaining bytes in
itu_t_t35_payload data MUST be data having syntax and semantics as
specified by the entity identified by the [ITUT-T35] country code and
terminal provider code. Note that any metadata to be carried with
this type of payload is expected to have been registered through
either national administrator, the Alliance for Telecommunications
Industry Solutions (ATIS) or the ITUT-T Telecommunication
Standardization Bureau (TSB) as specified in [ITUT-T35].
8.2.3. Mastering Display Color Volume Metadata
syntax code | type
--------------------------------------------------------------|-----
metadata_mdcv(payloadSize){ |
for(i = 0; i < 3; i++){ |
primary_chromaticity_x[i] | u(16)
primary_chromaticity_y[i] | u(16)
} |
white_point_chromaticity_x | u(16)
white_point_chromaticity_y | u(16)
max_mastering_luminance | u(32)
min_mastering_luminance | u(32)
} |
Figure 30: metadata_mdcv() syntax code
primary_chromaticity_x[i]
specifies a 0.16 fixed-point format of X chromaticity coordinate
of mastering display in terms of CIE 1931 as specified in
[ISO11664-1], where i = 0, 1, 2 specifies Red, Green, Blue,
respectively.
primary_chromaticity_y[i]
specifies a 0.16 fixed-point format of Y chromaticity coordinate
of mastering display in terms of CIE 1931 as specified in
[ISO11664-1], where i = 0, 1, 2 specifies Red, Green, Blue,
respectively.
white_point_chromaticity_x
specifies a 0.16 fixed-point format of white point X chromaticity
coordinate of mastering display in terms of CIE 1931 as specified
in [ISO11664-1].
white_point_chromaticity_y
specifies a 0.16 fixed-point format of white point Y chromaticity
coordinate as mastering display in terms of CIE 1931 as specified
in [ISO11664-1].
max_mastering_luminance
is a 24.8 fixed-point format of maximum display mastering
luminance, represented in candelas per square meter.
min_mastering_luminance
is an 18.14 fixed-point format of minimum display mastering
luminance, represented in candelas per square meter.
8.2.4. Content Light-Level Information Metadata
syntax code | type
--------------------------------------------------------------|-----
metadata_cll(payloadSize){ |
max_cll | u(16)
max_fall | u(16)
} |
Figure 31: metadata_cll() syntax code
max_cll
specifies the maximum content light level information as specified
in [CTA-861.3], Appendix A.
max_fall
specifies the maximum frame-average light level information as
specified in [CTA-861.3], Appendix A.
8.2.5. User-Defined Metadata
This metadata has user data identified by a universal unique
identifier as specified in [RFC9562], the contents of which are not
specified in this document.
syntax code | type
------------------------------------------------------------|-----
metadata_user_defined(payloadSize){ |
uuid | u(128)
for(i = 0; i < (payloadSize - 16); i++) |
user_defined_data_payload[i] | b(8)
} |
Figure 32: metadata_user_defined() syntax code
uuid
MUST be a 128-bit value specified as a generated Universally
Unique Identifier (UUID) according to the procedures specified in
[RFC9562].
user_defined_data_payload[i]
MUST be a byte having user-defined syntax and semantics as
specified by the UUID generator.
8.2.6. Undefined Metadata
syntax code | type
--------------------------------------------------------------|-----
metadata_undefined(payloadSize){ |
for(i = 0; i < payloadSize; i++){ |
undefined_metadata_payload_byte[i] | b(8)
} |
} |
Figure 33: metadata_undefined() syntax code
undefined_metadata_payload_byte[i]
is a byte reserved for future use.