Information technology — Coding-independent code points — Part 2: Video

This document defines various code points and fields that establish properties of a video (or still image) representation and are independent of the compression encoding and bit rate. These properties could describe the appropriate interpretation of decoded data or could, similarly, describe the characteristics of such a signal before the signal is compressed by an encoder that is suitable for compressing such an input signal.

Technologies de l'information — Points de code indépendants du codage — Partie 2: Vidéo

General Information

Status
Withdrawn
Publication Date
01-Aug-2019
Withdrawal Date
01-Aug-2019
Current Stage
9599 - Withdrawal of International Standard
Start Date
19-Oct-2021
Completion Date
19-Oct-2021
Ref Project

RELATIONS

Buy Standard

Standard
ISO/IEC 23091-2:2019 - Information technology -- Coding-independent code points
English language
26 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (sample)

INTERNATIONAL ISO/IEC
STANDARD 23091-2
First edition
2019-07
Information technology — Coding-
independent code points —
Part 2:
Video
Technologies de l'information — Points de code indépendants du
codage —
Partie 2: Vidéo
Reference number
ISO/IEC 23091-2:2019(E)
ISO/IEC 2019
---------------------- Page: 1 ----------------------
ISO/IEC 23091-2:2019(E)
COPYRIGHT PROTECTED DOCUMENT
© ISO/IEC 2019

All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may

be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting

on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address

below or ISO’s member body in the country of the requester.
ISO copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: +41 22 749 01 11
Fax: +41 22 749 09 47
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
ii © ISO/IEC 2019 – All rights reserved
---------------------- Page: 2 ----------------------
ISO/IEC 23091-2:2019(E)
Contents Page

Foreword ........................................................................................................................................................................................................................................iv

Introduction ..................................................................................................................................................................................................................................v

1 Scope ................................................................................................................................................................................................................................. 1

2 Normative references ...................................................................................................................................................................................... 1

3 Terms and definitions ..................................................................................................................................................................................... 1

4 Abbreviated terms .............................................................................................................................................................................................. 2

5 Conventions ............................................................................................................................................................................................................... 2

5.1 Arithmetic operators ......................................................................................................................................................................... 2

5.2 Bit-wise operators................................................................................................................................................................................ 3

5.3 Assignment operators ....................................................................................................................................................................... 3

5.4 Relational, logical, and other operators............................................................................................................................. 3

5.5 Mathematical functions ................................................................................................................................................................... 4

5.6 Order of operations ............................................................................................................................................................................. 5

6 Specified code points ....................................................................................................................................................................................... 5

7 Principles for definition and referencing of code points ........................................................................................... 6

7.1 Application usage ................................................................................................................................................................................. 6

7.2 Code point encoding and defaults .......................................................................................................................................... 6

7.3 Externally defined values ............................................................................................................................................................... 6

7.4 Reference format ................................................................................................................................................................................... 7

7.5 Uniform resource name format ................................................................................................................................................ 7

8 Video code points ................................................................................................................................................................................................. 7

8.1 Colour primaries ................................................................................................................................................................................... 7

8.2 Transfer characteristics ................................................................................................................................................................... 9

8.3 Matrix coefficients.............................................................................................................................................................................11

8.4 Video frame packing type ...........................................................................................................................................................17

8.5 Packed video content interpretation ................................................................................................................................23

8.6 Sample aspect ratio indicator ..................................................................................................................................................23

Bibliography .............................................................................................................................................................................................................................25

© ISO/IEC 2019 – All rights reserved iii
---------------------- Page: 3 ----------------------
ISO/IEC 23091-2:2019(E)
Foreword

ISO (the International Organization for Standardization) and IEC (the International Electrotechnical

Commission) form the specialized system for worldwide standardization. National bodies that

are members of ISO or IEC participate in the development of International Standards through

technical committees established by the respective organization to deal with particular fields of

technical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other

international organizations, governmental and non-governmental, in liaison with ISO and IEC, also

take part in the work.

The procedures used to develop this document and those intended for its further maintenance are

described in the ISO/IEC Directives, Part 1. In particular the different approval criteria needed for the

different types of ISO documents should be noted. This document was drafted in accordance with the

editorial rules of the ISO/IEC Directives, Part 2 (see www .iso .org/directives).

Attention is drawn to the possibility that some of the elements of this document may be the subject of

patent rights. ISO shall not be held responsible for identifying any or all such patent rights. Details of

any patent rights identified during the development of the document will be in the Introduction and/or

on the ISO list of patent declarations received (see www .iso .org/patents).

Any trade name used in this document is information given for the convenience of users and does not

constitute an endorsement.

For an explanation of the voluntary nature of standards, the meaning of ISO specific terms and

expressions related to conformity assessment, as well as information about ISO's adherence to the

World Trade Organization (WTO) principles in the Technical Barriers to Trade (TBT) see www .iso

.org/iso/foreword .html.

This document was prepared by Technical Committee ISO/IEC JTC1, Information technology,

Subcommittee SC 29, Coding of audio, picture, multimedia and hypermedia information, in collaboration

with ITU-T. The technically identical text is published as ITU-T H.273 (12/2016).

Together with ISO/IEC 23091-1 and ISO/IEC 23091-3, this first edition of ISO/IEC 23091-2 cancels and

replaces ISO/IEC 23001-8:2016, which has been technically revised.
A list of all parts in the ISO/IEC 23091 series can be found on the ISO website.

Any feedback or questions on this document should be directed to the user’s national standards body. A

complete listing of these bodies can be found at www .iso .org/members .html.
iv © ISO/IEC 2019 – All rights reserved
---------------------- Page: 4 ----------------------
ISO/IEC 23091-2:2019(E)
Introduction

In a number of specifications, there is a need to identify some characteristics of video (or still image)

media content that are logically independent of the compression format. These characteristics may

include, for example, aspects that relate to the sourcing or presentation, or the role of the video (or still

image) media component. These characteristics have typically been documented by fields that take an

encoded value or item selected from an enumerated list, herein called code points.

These code points are typically defined in the specification of compression formats to document these

characteristics of the media. In past practices, the definition of these fields has been copied from

document to document, sometimes with new values being added in later documents (and sometimes

with later amendments specified to add new entries to existing documents).
This past practice has raised a number of issues, including the following:

a) A lack of a formal way to avoid conflicting assignments being made in different documents.

b) Having additional values defined in later specifications that may be practically used with older

compression formats, but without clear formal applicability of these new values to older documents.

c) Any update or correction of code point semantics can incur significant effort to update all

documents in which the code point is specified, instead of enabling a single central specification to

apply across different referencing specifications.

d) The choice of reference for other specifications (such as container or delivery formats) not being

obvious; wherein a formal reference to a compression format document appears to favour that one

format over others, and also appears to preclude definitions defined in other compression format

specifications.

e) Burdensome maintenance needs to ensure that a reference to material defined in a compression

format specification is maintained appropriately over different revisions of the referenced format

specification, as the content of a compression format specification may change over time and is

ordinarily not intended as a point of reference for defining such code points.

This document provides a central definition of such code points for video and image applications

to address these issues. This document can be used to provide universal descriptions to assist

interpretation of video and image signals following decoding, or to describe the properties of these

signals before they are encoded.
© ISO/IEC 2019 – All rights reserved v
---------------------- Page: 5 ----------------------
INTERNATIONAL STANDARD ISO/IEC 23091-2:2019(E)
Information technology — Coding-independent code
points —
Part 2:
Video
1 Scope

This document defines various code points and fields that establish properties of a video (or still image)

representation and are independent of the compression encoding and bit rate. These properties could

describe the appropriate interpretation of decoded data or could, similarly, describe the characteristics

of such a signal before the signal is compressed by an encoder that is suitable for compressing such an

input signal.
2 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.

ISO 11664-1, Colorimetry — Part 1: CIE standard colorimetric observers
3 Terms and definitions
For the purposes of this document, the following terms and definitions apply.

ISO and IEC maintain terminological databases for use in standardization at the following addresses:

— IEC Electropedia: available at http: //www .electropedia .org/
— ISO Online browsing platform: available at http: //www .iso .org/obp
3.1
chroma

sample array or single sample representing one of the two colour difference signals related to the

primary colours, represented by the symbols Cb and Cr

Note 1 to entry: The term chroma is used rather than the term chrominance in order to avoid the implication of

the use of linear light transfer characteristics that is often associated with the term chrominance.

3.2
component

array or single sample from one of the three arrays [luma (3.3) and two chroma (3.1)] that compose a

picture in 4:2:0, 4:2:2, or 4:4:4 colour format or the array or a single sample of the array that compose a

picture in monochrome format
© ISO/IEC 2019 – All rights reserved 1
---------------------- Page: 6 ----------------------
ISO/IEC 23091-2:2019(E)
3.3
luma

sample array or single sample is representing the monochrome signal related to the primary colours,

represented by the symbol or subscript Y or L

Note 1 to entry: The term luma is used rather than the term luminance in order to avoid the implication of the

use of linear light transfer characteristics that is often associated with the term luminance. The symbol L is

sometimes used instead of the symbol Y to avoid confusion with the symbol y as used for vertical location.

3.4
picture

array of luma (3.3) samples in monochrome format or array of luma samples and two corresponding

arrays of chroma (3.1) samples in 4:2:0, 4:2:2, and 4:4:4 colour format
3.5
reserved

values of a particular code point that are for future use by ITU-T | ISO/IEC and shall not be used in

identifiers conforming to this version of this document, but which may be used in a manner yet to be

specified in some future extensions of this document by ITU-T | ISO/IEC
3.6
unspecified

values of a particular code point that have no specified meaning in this version of this document and

will not have a specified meaning in the future as an integral part of future versions of this document

4 Abbreviated terms
LSB least significant bit
MSB most significant bit
5 Conventions

NOTE The mathematical operators used in this document are similar to those used in the C programming

language. However, integer division and arithmetic shift operations are specifically defined. Numbering and

counting conventions generally begin from 0.
5.1 Arithmetic operators
+ addition

− subtraction (as a two-argument operator) or negation (as a unary prefix operator)

* multiplication, including matrix multiplication

exponentiation, x to the power of y (in other contexts, such notation may be used for super-

scripting not intended for interpretation as exponentiation)

integer division with truncation of the result toward zero (for example, 7 / 4 and (−7) / (−4)

are truncated to 1 and (−7) / 4 and 7 / (−4) are truncated to −1)
÷ division in mathematical formulae where no truncation or rounding is intended
2 © ISO/IEC 2019 – All rights reserved
---------------------- Page: 7 ----------------------
ISO/IEC 23091-2:2019(E)
division in mathematical formulae where no truncation or rounding is intended

summation of f( i ) with i taking all integer values from x up to and including y

ix=

x % y modulus, remainder of x divided by y, defined only for integers x and y with x >= 0 and y > 0

5.2 Bit-wise operators

bit-wise "and" (when operating on integer arguments, operates on a two's complement

representation of the integer value; when operating on a binary argument that contains

fewer bits than another argument, the shorter argument is extended by adding more signif-

icant bits equal to 0)

bit-wise "or" (when operating on integer arguments, operates on a two's complement

representation of the integer value; when operating on a binary argument that contains

fewer bits than another argument, the shorter argument is extended by adding more signif-

icant bits equal to 0)

bit-wise "exclusive or" (when operating on integer arguments, operates on a two's

complement representation of the integer value; when operating on a binary argument that

contains fewer bits than another argument, the shorter argument is extended by adding

more significant bits equal to 0)

arithmetic right shift of a two's complement integer representation of x by y binary digits

x >> y (defined only for non-negative integer values of y; bits shifted into the MSBs as a result of

the right shift have a value equal to the MSB of x prior to the shift operation)

arithmetic left shift of a two's complement integer representation of x by y binary digits

x << y (defined only for non-negative integer values of y; bits shifted into the LSBs as a result of

the left shift have a value equal to 0)
5.3 Assignment operators
= assignment operator

increment, i.e., x++ is equivalent to x = x + 1; when used in an array index, evaluates to the

value of the variable prior to the increment operation

decrement, i.e., x− − is equivalent to x = x − 1; when used in an array index, evaluates to the

− −
value of the variable prior to the decrement operation

increment by amount given, i.e., x += 3 is equivalent to x = x + 3, and x += (−3) is equivalent

to x = x + (−3)

decrement by amount given, i.e., x −= 3 is equivalent to x = x − 3, and x −= (−3) is equivalent

to x = x − (−3)
5.4 Relational, logical, and other operators
= = equality operator
!= not equal to operator
!x logical negation "not"
© ISO/IEC 2019 – All rights reserved 3
---------------------- Page: 8 ----------------------
ISO/IEC 23091-2:2019(E)
> larger than operator
< smaller than operator
>= larger than or equal to operator
<= smaller than or equal to operator

conditional/logical "and" operator, performs a logical "and" of its Boolean operators, but

only evaluates the second operand when necessary

conditional/logical "or" operator, performs a logical "or" of its Boolean operators, but only

| |
evaluates the second operand when necessary

ternary conditional, if condition a is true, then the result is equal to b; otherwise the result

a ? b : c
is equal to c

NOTE When a relational operator is applied to a code point or variable that has been assigned the value

"na" (not applicable), the value "na" is treated as a distinct value for the code point or variable. The value "na" is

considered not to be equal to any other value.
5.5 Mathematical functions
 x; x >= 0
Absx()= (1)
−x; x < 0
Ceil(x) the smallest integer greater than or equal to x. (2)
Clip1 ( x ) = Clip3( 0, ( 1 << BitDepth ) − 1, x ), (3)
Y Y

where BitDepth is the representation bit depth of the corresponding luma colour component signal.

Clip1 ( x ) = Clip3( 0, ( 1 << BitDepth ) − 1, x ), (4)
C C

where BitDepth is the representation bit depth of the corresponding chroma colour component signal

C. In general, BitDepth may be distinct for different chroma colour components signals C – e.g. for C

corresponding to Cb or Cr.
x; z < x
Clip3x, y, z = y; z > y (5)
z; otherwise
Floor( x ) the largest integer less than or equal to x. (6)
Ln( x ) the natural logarithm of x. (7)
Log10( x ) the base-10 logarithm of x. (8)
Round( x ) = Sign( x ) * Floor( Abs( x ) + 0.5 ). (9)
4 © ISO/IEC 2019 – All rights reserved
---------------------- Page: 9 ----------------------
ISO/IEC 23091-2:2019(E)
 1; x > 0
Sign x= 0; x = = 0 (10)
−1; x < 0
Sqrt( x ) = x. (11)
5.6 Order of operations

When order of precedence in an expression is not indicated explicitly by use of parentheses, the

following rules apply:

— Operations of a higher precedence are evaluated before any operation of a lower precedence.

— Operations of the same precedence are evaluated sequentially from left to right.

Table 1 specifies the precedence of operations from highest to lowest; a higher position in the table

indicates a higher precedence.

NOTE For those operators that are also used in the C programming language, the order of precedence used

in this document is the same as used in the C programming language.

Table 1 — Operation precedence from highest (at top of table) to lowest (at bottom of table)

Operations (with operands x, y, and z)
"x++", "x− −"
"!x", "−x" (as a unary prefix operator)
"x "
"x * y", "x / y", "x ÷ y", " ", "x % y"
"x + y", "x − y" (as a two-argument operator), " fi "
ix=
"x << y", "x >> y"
"x < y", "x <= y", "x > y", "x >= y"
"x = = y", "x != y"
"x & y"
"x | y"
"x && y"
"x | | y"
"x ? y : z"
"x..y"
"x = y", "x += y", "x −= y"
6 Specified code points

This clause identifies the code points defined in this document, as listed in Table 2 with cross-references

to the subclause in which each is specified.
© ISO/IEC 2019 – All rights reserved 5
---------------------- Page: 10 ----------------------
ISO/IEC 23091-2:2019(E)
Table 2 — List of code point definitions
Name Abstract Subclause
ColourPrimaries Video colour primaries 8.1
TransferCharacteristics Video colour transfer characteristics 8.2
MatrixCoefficients and VideoFullRangeFlag Video matrix colour coefficients 8.3
VideoFramePackingType and QuincunxSamplingFlag Video frame packing 8.4
PackedContentInterpretationType Interpretation of packed video frames 8.5
SampleAspectRatio, SarWidth, and SarHeight Sample aspect ratio of video 8.6
7 Principles for definition and referencing of code points
7.1 Application usage

This document specifies code points for coding-independent description of video and image signal type

characteristics. These signal type identifiers can be used to provide universal descriptions to assist the

interpretation of signals following decoding or to describe properties of the signals prior to encoding.

An example of the usage of the code point identifiers specified in this document is illustrated in

Figure 1. The signal type identifier may be represented within the video elementary stream produced

by an encoder. Alternatively, or additionally, the signal type identifier may be carried outside of a video

elementary stream by other means, such as in a file storage format, in a system multiplex format, or in

a streaming system protocol.
Figure 1 — Example usage
7.2 Code point encoding and defaults

The code points defined herein may be specified as a value or a label of an enumerated list. The definition

of their encoding and representation (e.g. as a binary number) is the responsibility of the specification

using the code point, as is the identification of any applicable default value not specified herein. It is also

possible for external specifications to use a mapping to values defined here, if they wish to preserve

identical semantics but different code point assignments.

Guidance is given for each code point as to a suitable type (e.g. unsigned integer) and a suitable value

range (e.g. 0–63) for assistance in writing derived specifications. In some instances, default flag values

are provided that are suggested to be inferred for code point parameters with associated flags that may

not be explicitly signalled or specified in derived specifications.
7.3 Externally defined values

If the external specification permits values not defined by this document to be identified in the same

field that carries values defined by this document, then that other specification must identify how

values defined herein can be distinguished from values not defined herein.
6 © ISO/IEC 2019 – All rights reserved
---------------------- Page: 11 ----------------------
ISO/IEC 23091-2:2019(E)
7.4 Reference format

References to code points in this document should use only the code point name (i.e. a "Name" from

Table 2) and specification title, and not use subclause numbers or any other "fragile" reference such as a

table number. For example, for a hypothetical code point named "ChocolateDensity", a document could

refer to "ChocolateDensity as defined in ISO/IEC 23091-2".
7.5 Uniform resource name format

ISO/IEC 23091-1 specifies a uniform resource name format that may be used for the code points

specified in this document.
8 Video code points
8.1 Colour primaries
Type: Unsigned integer, enumeration
Range: 0 – 255

ColourPrimaries indicates the chromaticity coordinates of the source colour primaries as specified

in Table 3 in terms of the CIE 1931 definition of x and y, which shall be interpreted as specified by

ISO 11664-1.

An 8-bit field should be adequate for representation of the ColourPrimaries code point.

Table 3 — Interpretation of colour primaries (ColourPrimaries) value
Value Colour primaries Informative remarks
0 Reserved For future use by ITU-T | ISO/IEC
1 primary x y Rec. ITU-R BT.709-6
green 0.300 0.600
Rec. ITU-R BT.1361-0 conventional colour gamut
system and extended colour gamut system
blue 0.150 0.060
(historical)
red 0.640 0.330
IEC 61966-2-1 sRGB or sYCC
white D65 0.3127 0.3290
IEC 61966-2-4
Society of Motion Picture and Television
Engineers RP 177 (1993) Annex B
2 Unspecified Image characteristics are unknown or are
determined by the application.
3 Reserved For future use by ITU-T | ISO/IEC
4 primary x y Rec. ITU-R BT.470-6 System M (historical)
green 0.21 0.71
United States National Television System
Committee 1953 Recommendation for
blue 0.14 0.08
transmission standards for colour television
red 0.67 0.33
United States Federal Communications
white C 0.310 0.316
Commission Title 47 Code of Federal Regulations
(2003) 73.682 (a) (20)
5 primary x y Rec. ITU-R BT.470-6 System B, G (historical)
green 0.29 0.60
Rec. ITU-R BT.601-7 625
blue 0.15 0.06
Rec. ITU-R BT.1358-0 625 (historical)
red 0.64 0.33
Rec. ITU-R BT.1700-0 625 PAL and 625 SECAM
white D65 0.3127 0.3290
© ISO/IEC 2019 – All rights reserved 7
---------------------- Page: 12 ----------------------
ISO/IEC 23091-2:2019(E)
Table 3 (continued)
Value Colour primaries Informative remarks
6 primary x y Rec. ITU-R BT.601-7 525
green 0.310 0.595
Rec. ITU-R BT.1358-1 525 or 625 (historical)
blue 0.155 0.070
Rec. ITU-R BT.1700-0 NTSC
red 0.630 0.340
Society of Motion Picture and Television
white D65 0.3127 0.3290 Engineers ST 170 (2004)
(functionally the same as the value 7)
7 primary x y Society of Motion Picture and Television
Engineers ST 240 (1999) (historical)
green 0.310 0.595
(functionally the same as the value 6)
blue 0.155 0.070
red 0.630 0.340
white D65 0.3127 0.3290
8 primary x y Generic film (colour filters using Illuminant C)
green 0.243 0.692 (Wratten 58)
blue 0.145 0.049 (Wratten 47)
red 0.681 0.319 (Wratten 25)
white C 0.310 0.316
9 primary x y Rec. ITU-R BT.2020-2
green 0.170 0.797
Rec. ITU-R BT.2100-1
blue 0.131 0.046
red 0.708 0.292
white D65 0.3127 0.3290
10 primary x y Society of Motion Picture and Television
Engineers ST 428-1
green (Y) 0.0 1.0
(CIE 1931 XYZ as in ISO 11664-1)
blue (Z) 0.0 0.0
red (X) 1.0 0.0
centre white 1 ÷ 3 1 ÷ 3
11 primary x y Society of Motion Picture and Television
Engineers RP 431-2 (2011)
green 0.265 0.690
blue 0.150 0.060
red 0.680 0.320
white 0.314 0.351
12 primary x y Society of Motion Picture and Television
Engineers EG 432-1 (2010)
green 0.265 0.690
blue 0.150 0.060
red 0.680 0.320
white D65 0.3127 0.3290
13–21 Reserved For future use by ITU-T | ISO/IEC
22 primary x y EBU Tech. 3213-E (1975)
green 0.295 0.605
blue 0.155 0.077
red 0.630 0.340
white D65 0.3127 0.3290
23–255 Reserved For future use by ITU-T | ISO/IEC
8 © ISO/IEC 2019 – All rights reserved
---------------------- Page: 13 ----------------------
ISO/IEC 23091-2:2019(E)
8.2 Transfer characteristics
Type: Unsigned integer, enumeration
Range: 0 – 255

TransferCharacteristics, as specified in Table 4, either indicates the reference opto-electronic transfer

characteristic function of the source picture as a function of a source input linear optical intensity input

L with a nominal real-valued range of 0 to 1 or indicates the inverse of the reference electro-optical

transfer characteristic function as a function of an output linear optical intensity L with a nominal real-

valued range of 0 to 1. For interpretation of entries in Table 4 that are expressed in terms of multiple

curve segments parameterized by the variable α over a region bounded by the variable β or by the

variables β and γ, the values of α and β are defined to be the positive constants necessary for the curve

segments that meet at the value β to have continuity of both value and slope at the value β. The value of

γ, when applicable, is defined to be the positive constant necessary for the associated curve segments

to meet at t
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.