Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 2: High efficiency video coding

ISO/IEC 23008-2:2013 specifies high efficiency video coding. It was developed in response to the growing need for higher compression of moving pictures for various applications such as videoconferencing, digital storage media, television broadcasting, internet streaming, and communications. It is also designed to enable the use of the coded video representation in a flexible manner for a wide variety of network environments as well as to enable the use of multi-core parallel encoding and decoding devices. The use of ISO/IEC 23008-2:2013 allows motion video to be manipulated as a form of computer data and to be stored on various storage media, transmitted and received over existing and future networks and distributed on existing and future broadcasting channels.

Technologies de l'information — Codage à haute efficacité et livraison des medias dans des environnements hétérogènes — Partie 2: Codage vidéo à haute efficacité

General Information

Status
Withdrawn
Publication Date
24-Nov-2013
Withdrawal Date
24-Nov-2013
Current Stage
9599 - Withdrawal of International Standard
Start Date
04-May-2015
Completion Date
30-Oct-2025
Ref Project

Relations

Standard
ISO/IEC 23008-2:2013 - Information technology -- High efficiency coding and media delivery in heterogeneous environments
English language
296 pages
sale 15% off
Preview
sale 15% off
Preview

Frequently Asked Questions

ISO/IEC 23008-2:2013 is a standard published by the International Organization for Standardization (ISO). Its full title is "Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 2: High efficiency video coding". This standard covers: ISO/IEC 23008-2:2013 specifies high efficiency video coding. It was developed in response to the growing need for higher compression of moving pictures for various applications such as videoconferencing, digital storage media, television broadcasting, internet streaming, and communications. It is also designed to enable the use of the coded video representation in a flexible manner for a wide variety of network environments as well as to enable the use of multi-core parallel encoding and decoding devices. The use of ISO/IEC 23008-2:2013 allows motion video to be manipulated as a form of computer data and to be stored on various storage media, transmitted and received over existing and future networks and distributed on existing and future broadcasting channels.

ISO/IEC 23008-2:2013 specifies high efficiency video coding. It was developed in response to the growing need for higher compression of moving pictures for various applications such as videoconferencing, digital storage media, television broadcasting, internet streaming, and communications. It is also designed to enable the use of the coded video representation in a flexible manner for a wide variety of network environments as well as to enable the use of multi-core parallel encoding and decoding devices. The use of ISO/IEC 23008-2:2013 allows motion video to be manipulated as a form of computer data and to be stored on various storage media, transmitted and received over existing and future networks and distributed on existing and future broadcasting channels.

ISO/IEC 23008-2:2013 is classified under the following ICS (International Classification for Standards) categories: 35.040 - Information coding; 35.040.40 - Coding of audio, video, multimedia and hypermedia information. The ICS classification helps identify the subject area and facilitates finding related standards.

ISO/IEC 23008-2:2013 has the following relationships with other standards: It is inter standard links to ISO/IEC 23008-2:2013/FDAmd 4, ISO/IEC 23008-2:2015. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.

You can purchase ISO/IEC 23008-2:2013 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of ISO standards.

Standards Content (Sample)


INTERNATIONAL ISO/IEC
STANDARD 23008-2
First edition
2013-12-01
Information technology — High efficiency
coding and media delivery in
heterogeneous environments —
Part 2:
High efficiency video coding
Technologies de l'information — Codage à haute efficacité et livraison
des medias dans des environnements hétérogènes —
Partie 2: Codage vidéo à haute efficacité

Reference number
©
ISO/IEC 2013
©  ISO/IEC 2013
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,
electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or
ISO's member body in the country of the requester.
ISO copyright office
Case postale 56 • CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published in Switzerland
ii © ISO/IEC 2013 – All rights reserved

CONTENTS
Page
0 Introduction . 1
0.1 General. 1
0.2 Prologue. 1
0.3 Purpose . 1
0.4 Applications. 1
0.5 Publication and versions of this Specification . 1
0.6 Profiles, tiers and levels . 2
0.7 Overview of the design characteristics . 2
0.8 How to read this Specification. 2
1 Scope . 3
2 Normative references. 3
2.1 General. 3
2.2 Identical Recommendations | International Standards . 3
2.3 Paired Recommendations | International Standards equivalent in technical content . 3
2.4 Additional references. 3
3 Definitions . 3
4 Abbreviations. 12
5 Conventions . 13
5.1 General. 13
5.2 Arithmetic operators . 13
5.3 Logical operators . 13
5.4 Relational operators . 14
5.5 Bit-wise operators. 14
5.6 Assignment operators . 14
5.7 Range notation . 14
5.8 Mathematical functions. 15
5.9 Order of operation precedence. 15
5.10 Variables, syntax elements, and tables. 16
5.11 Text description of logical operations. 17
5.12 Processes. 18
6 Bitstream and picture formats, partitionings, scanning processes, and neighbouring relationships . 18
6.1 Bitstream formats. 18
6.2 Source, decoded, and output picture formats . 18
6.3 Partitioning of pictures, slices, slice segments, tiles, coding tree units, and coding tree blocks. 21
6.3.1 Partitioning of pictures into slices, slice segments, and tiles . 21
6.3.2 Block and quadtree structures . 22
6.3.3 Spatial or component-wise partionings. 23
6.4 Availability processes . 23
6.4.1 Derivation process for z-scan order block availability. 23
6.4.2 Derivation process for prediction block availability . 24
6.5 Scanning processes . 25
6.5.1 Coding tree block raster and tile scanning conversion process. 25
6.5.2 Z-scan order array initialization process . 26
6.5.3 Up-right diagonal scan order array initialization process . 26
6.5.4 Horizontal scan order array initialization process. 27
6.5.5 Vertical scan order array initialization process . 27
7 Syntax and semantics. 28
7.1 Method of specifying syntax in tabular form. 28
7.2 Specification of syntax functions and descriptors. 29
7.3 Syntax in tabular form . 30
7.3.1 NAL unit syntax. 30
7.3.1.1 General NAL unit syntax. 30
© ISO/IEC 2013 – All rights reserved iii

7.3.1.2 NAL unit header syntax. 30
7.3.2 Raw byte sequence payloads, trailing bits, and byte alignment syntax. 31
7.3.2.1 Video parameter set RBSP syntax . 31
7.3.2.2 Sequence parameter set RBSP syntax. 32
7.3.2.3 Picture parameter set RBSP syntax. 34
7.3.2.4 Supplemental enhancement information RBSP syntax. 35
7.3.2.5 Access unit delimiter RBSP syntax . 35
7.3.2.6 End of sequence RBSP syntax. 35
7.3.2.7 End of bitstream RBSP syntax. 35
7.3.2.8 Filler data RBSP syntax. 36
7.3.2.9 Slice segment layer RBSP syntax. 36
7.3.2.10 RBSP slice segment trailing bits syntax . 36
7.3.2.11 RBSP trailing bits syntax. 36
7.3.2.12 Byte alignment syntax . 36
7.3.3 Profile, tier and level syntax . 37
7.3.4 Scaling list data syntax. 38
7.3.5 Supplemental enhancement information message syntax . 38
7.3.6 Slice segment header syntax . 39
7.3.6.1 General slice segment header syntax . 39
7.3.6.2 Reference picture list modification syntax. 41
7.3.6.3 Weighted prediction parameters syntax. 42
7.3.7 Short-term reference picture set syntax. 43
7.3.8 Slice segment data syntax . 43
7.3.8.1 General slice segment data syntax . 43
7.3.8.2 Coding tree unit syntax. 44
7.3.8.3 Sample adaptive offset syntax . 45
7.3.8.4 Coding quadtree syntax . 46
7.3.8.5 Coding unit syntax. 47
7.3.8.6 Prediction unit syntax . 49
7.3.8.7 PCM sample syntax . 49
7.3.8.8 Transform tree syntax . 50
7.3.8.9 Motion vector difference syntax . 50
7.3.8.10 Transform unit syntax. 51
7.3.8.11 Residual coding syntax . 52
7.4 Semantics. 54
7.4.1 General. 54
7.4.2 NAL unit semantics . 54
7.4.2.1 General NAL unit semantics. 54
7.4.2.2 NAL unit header semantics. 55
7.4.2.3 Encapsulation of an SODB within an RBSP (informative) . 58
7.4.2.4 Order of NAL units and association to coded pictures, access units, and coded video sequences . 59
7.4.3 Raw byte sequence payloads, trailing bits, and byte alignment semantics . 62
7.4.3.1 Video parameter set RBSP semantics. 62
7.4.3.2 Sequence parameter set RBSP semantics .64
7.4.3.3 Picture parameter set RBSP semantics . 69
7.4.3.4 Supplemental enhancement information RBSP semantics . 72
7.4.3.5 Access unit delimiter RBSP semantics . 72
7.4.3.6 End of sequence RBSP semantics. 72
7.4.3.7 End of bitstream RBSP semantics . 72
7.4.3.8 Filler data RBSP semantics. 73
7.4.3.9 Slice segment layer RBSP semantics. 73
7.4.3.10 RBSP slice segment trailing bits semantics . 73
7.4.3.11 RBSP trailing bits semantics. 73
7.4.3.12 Byte alignment semantics . 73
7.4.4 Profile, tier and level semantics . 73
7.4.5 Scaling list data semantics . 75
7.4.6 Supplemental enhancement information message semantics. 76
7.4.7 Slice segment header semantics. 77
7.4.7.1 General slice segment header semantics. 77
7.4.7.2 Reference picture list modification semantics . 81
7.4.7.3 Weighted prediction parameters semantics. 82
7.4.8 Short-term reference picture set semantics . 83
7.4.9 Slice segment data semantics. 85
iv © ISO/IEC 2013 – All rights reserved

7.4.9.1 General slice segment data semantics. 85
7.4.9.2 Coding tree unit semantics. 85
7.4.9.3 Sample adaptive offset semantics . 85
7.4.9.4 Coding quadtree semantics . 87
7.4.9.5 Coding unit semantics. 87
7.4.9.6 Prediction unit semantics. 89
7.4.9.7 PCM sample semantics. 90
7.4.9.8 Transform tree semantics. 90
7.4.9.9 Motion vector difference semantics. 91
7.4.9.10 Transform unit semantics. 91
7.4.9.11 Residual coding semantics. 92
8 Decoding process. 94
8.1 General decoding process . 94
8.2 NAL unit decoding process . 95
8.3 Slice decoding process. 96
8.3.1 Decoding process for picture order count . 96
8.3.2 Decoding process for reference picture set . 96
8.3.3 Decoding process for generating unavailable reference pictures . 100
8.3.3.1 General decoding process for generating unavailable reference pictures . 100
8.3.3.2 Generation of one unavailable picture . 101
8.3.4 Decoding process for reference picture lists construction. 101
8.4 Decoding process for coding units coded in intra prediction mode . 102
8.4.1 General decoding process for coding units coded in intra prediction mode . 102
8.4.2 Derivation process for luma intra prediction mode. 103
8.4.3 Derivation process for chroma intra prediction mode. 105
8.4.4 Decoding process for intra blocks. 105
8.4.4.1 General decoding process for intra blocks. 105
8.4.4.2 Intra sample prediction . 106
8.5 Decoding process for coding units coded in inter prediction mode . 112
8.5.1 General decoding process for coding units coded in inter prediction mode . 112
8.5.2 Inter prediction process. 112
8.5.3 Decoding process for prediction units in inter prediction mode . 115
8.5.3.1 General. 115
8.5.3.2 Derivation process for motion vector components and reference indices. 115
8.5.3.3 Decoding process for inter prediction samples . 130
8.5.4 Decoding process for the residual signal of coding units coded in inter prediction mode. 138
8.5.4.1 General. 138
8.5.4.2 Decoding process for luma residual blocks . 139
8.5.4.3 Decoding process for chroma residual blocks . 140
8.6 Scaling, transformation and array construction process prior to deblocking filter process. 141
8.6.1 Derivation process for quantization parameters. 141
8.6.2 Scaling and transformation process . 142
8.6.3 Scaling process for transform coefficients. 143
8.6.4 Transformation process for scaled transform coefficients . 144
8.6.4.1 General. 144
8.6.4.2 Transformation process. 144
8.6.5 Picture construction process prior to in-loop filter process. 146
8.7 In-loop filter process. 146
8.7.1 General. 146
8.7.2 Deblocking filter process . 147
8.7.2.1 General. 147
8.7.2.2 Derivation process of transform block boundary. 148
8.7.2.3 Derivation process of prediction block boundary. 149
8.7.2.4 Derivation process of boundary filtering strength . 150
8.7.2.5 Edge filtering process . 151
8.7.3 Sample adaptive offset process . 159
8.7.3.1 General. 159
8.7.3.2 Coding tree block modification process. 159
© ISO/IEC 2013 – All rights reserved v

9 Parsing process . 161
9.1 General. 161
9.2 Parsing process for 0-th order Exp-Golomb codes . 161
9.2.1 General. 161
9.2.2 Mapping process for signed Exp-Golomb codes . 163
9.3 CABAC parsing process for slice segment data . 163
9.3.1 General. 163
9.3.2 Initialization process . 165
9.3.2.1 General. 165
9.3.2.2 Initialization process for context variables . 166
9.3.2.3 Storage process for context variables . 174
9.3.2.4 Synchronization process for context variables. 174
9.3.2.5 Initialization process for the arithmetic decoding engine . 174
9.3.3 Binarization process. 175
9.3.3.1 General. 175
9.3.3.2 Truncated Rice (TR) binarization process . 176
9.3.3.3 k-th order Exp-Golomb (EGk) binarization process. 177
9.3.3.4 Fixed-length (FL) binarization process. 178
9.3.3.5 Binarization process for part_mode . 178
9.3.3.6 Binarization process for intra_chroma_pred_mode. 178
9.3.3.7 Binarization process for inter_pred_idc. 179
9.3.3.8 Binarization process for cu_qp_delta_abs . 179
9.3.3.9 Binarization process for coeff_abs_level_remaining. 179
9.3.4 Decoding process flow. 180
9.3.4.1 General. 180
9.3.4.2 Derivation process for ctxTable, ctxIdx and bypassFlag . 180
9.3.4.3 Arithmetic decoding process . 186
9.3.5 Arithmetic encoding process (informative) . 192
9.3.5.1 General. 192
9.3.5.2 Initialization process for the arithmetic encoding engine (informative) . 192
9.3.5.3 Encoding process for a binary decision (informative) . 193
9.3.5.4 Renormalization process in the arithmetic encoding engine (informative) . 194
9.3.5.5 Bypass encoding process for binary decisions (informative). 195
9.3.5.6 Encoding process for a binary decision before termination (informative). 196
9.3.5.7 Byte stuffing process (informative) . 197
10 Sub-bitstream extraction process . 198
Annex A Profiles, tiers and levels . 199
A.1 Overview of profiles, tiers and levels . 199
A.2 Requirements on video decoder capability . 199
A.3 Profiles. 199
A.3.1 General. 199
A.3.2 Main profile . 199
A.3.3 Main 10 profile . 200
A.3.4 Main Still Picture profile . 200
A.4 Tiers and levels . 201
A.4.1 General tier and level limits . 201
A.4.2 Profile-specific level limits for the Main and Main 10 profiles . 202
A.4.3 Effect of level limits on picture rate for the Main and Main 10 profiles (informative) . 204
Annex B Byte stream format . 208
B.1 General. 208
B.2 Byte stream NAL unit syntax and semantics . 208
B.2.1 Byte stream NAL unit syntax. 208
B.2.2 Byte stream NAL unit semantics . 208
B.3 Byte stream NAL unit decoding process . 209
B.4 Decoder byte-alignment recovery (informative). 209
Annex C Hypothetical reference decoder. 210
C.1 General. 210
C.2 Operation of coded picture buffer (CPB). 214
C.2.1 General. 214
C.2.2 Timing of decoding unit arrival . 214
vi © ISO/IEC 2013 – All rights reserved

C.2.3 Timing of decoding unit removal and decoding of decoding unit . 216
C.3 Operation of the decoded picture buffer (DPB). 218
C.3.1 General. 218
C.3.2 Removal of pictures from the DPB. 218
C.3.3 Picture output. 219
C.3.4 Current decoded picture marking and storage. 220
C.4 Bitstream conformance . 220
C.5 Decoder conformance . 221
C.5.1 General. 221
C.5.2 Operation of the output order DPB . 222
C.5.2.1 General. 222
C.5.2.2 Output and removal of pictures from the DPB . 222
C.5.2.3 Picture decoding, marking, additional bumping, and storage . 223
C.5.2.4 "Bumping" process . 223
Annex D Supplemental enhancement information . 225
D.1 General. 225
D.2 SEI payload syntax . 226
D.2.1 General SEI message syntax. 226
D.2.2 Buffering period SEI message syntax . 228
D.2.3 Picture timing SEI message syntax. 229
D.2.4 Pan-scan rectangle SEI message syntax. 229
D.2.5 Filler payload SEI message syntax . 230
D.2.6 User data registered by Rec. ITU-T T.35 SEI message syntax. 230
D.2.7 User data unregistered SEI message syntax. 230
D.2.8 Recovery point SEI message syntax . 230
D.2.9 Scene information SEI message syntax . 231
D.2.10 Picture snapshot SEI message syntax . 231
D.2.11 Progressive refinement segment start SEI message syntax. 231
D.2.12 Progressive refinement segment end SEI message syntax. 231
D.2.13 Film grain characteristics SEI message syntax . 232
D.2.14 Post-filter hint SEI message syntax. 232
D.2.15 Tone mapping information SEI message syntax. 233
D.2.16 Frame packing arrangement SEI message syntax . 234
D.2.17 Display orientation SEI message syntax . 234
D.2.18 Structure of pictures information SEI message syntax . 235
D.2.19 Decoded picture hash SEI message syntax . 235
D.2.20 Active parameter sets SEI message syntax . 235
D.2.21 Decoding unit information SEI message syntax . 236
D.2.22 Temporal sub-layer zero index SEI message syntax. 236
D.2.23 Scalable nesting SEI message syntax. 236
D.2.24 Region refresh information SEI message syntax . 237
D.2.25 Reserved SEI message syntax. 237
D.3 SEI payload semantics . 237
D.3.1 General SEI payload semantics. 237
D.3.2 Buffering period SEI message semantics. 240
D.3.3 Picture timing SEI message semantics. 242
D.3.4 Pan-scan rectangle SEI message semantics . 247
D.3.5 Filler payload SEI message semantics . 248
D.3.6 User data registered by Rec. ITU-T T.35 SEI message semantics. 248
D.3.7 User data unregistered SEI message semantics. 248
D.3.8 Recovery point SEI message semantics. 248
D.3.9 Scene information SEI message semantics . 249
D.3.10 Picture snapshot SEI message semantics .
...

Questions, Comments and Discussion

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

Loading comments...