ISO/IEC 23002-4:2014/Amd 2:2015
(Amendment)Information technology — MPEG video technologies — Part 4: Video tool library — Amendment 2: FU and FN descriptions for HEVC
Information technology — MPEG video technologies — Part 4: Video tool library — Amendment 2: FU and FN descriptions for HEVC
Technologies de l'information — Technologies vidéo MPEG — Partie 4: Bibliothèque d'outils vidéo — Amendement 2: Descriptions des FU et FN pour HEVC
General Information
Relations
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD 23002-4
Second edition
2014-04-15
AMENDMENT 2
2015-04-01
Information technology — MPEG video
technologies —
Part 4:
Video tool library
AMENDMENT 2: FU and FN descriptions
for HEVC
Technologies de l’information — Technologies vidéo MPEG —
Partie 4: Bibliothèque d’outils vidéo
AMENDEMENT 2: Descriptions des FU et FN pour HEVC
Reference number
ISO/IEC 23002-4:2014/Amd.2:2015(E)
©
ISO/IEC 2015
---------------------- Page: 1 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
COPYRIGHT PROTECTED DOCUMENT
© ISO/IEC 2015
All rights reserved. Unless otherwise specified, 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
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 2015 – All rights reserved
---------------------- Page: 2 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(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. In the field of information technology, ISO and IEC have established a joint technical committee,
ISO/IEC JTC 1.
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 document 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 and IEC 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 on the meaning of ISO specific terms and expressions related to conformity
assessment, as well as information about ISO’s adherence to the WTO principles in the Technical Barriers
to Trade (TBT), see the following URL: Foreword — Supplementary information.
The committee responsible for this document is ISO/IEC JTC 1, Information technology, Subcommittee
SC 29, Coding of audio, picture, multimedia and hypermedia information.
© ISO/IEC 2015 – All rights reserved iii
---------------------- Page: 3 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Introduction
This amendment specifies FU and FN description for support of HEVC (ISO/IEC 23008-2) Main Profile.
iv © ISO/IEC 2015 – All rights reserved
---------------------- Page: 4 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Information technology — MPEG video technologies —
Part 4:
Video tool library
AMENDMENT 2: FU and FN descriptions for HEVC
Add the end of Clause 2, add the following paragraph:
ISO/IEC 23008-2, Information technology — High efficiency coding and media delivery in heterogeneous
environments — Part 2: High efficiency video coding
Insert a new Clause 9 and its subclauses, as follows:
9 FUs for HEVC Main Profile
FUs for building an HEVC Main Profile decoder are described in this subclause.
9.1 Syntax Parsing
9.1.1 Algo_SynP
FU Name Algo_Parser
FU algoParser parses syntax elements needed to decode HEVC Main profile
Description
bitstreams.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
byte uint(size=8) token
Output
Name Token
CUInfo uint(size=16) token
IntraPredMode uint(size= 6) token
SliceAddr uint(size=16) token
PartMode uint(size= 4) token
IsPicSlcLcu uint(size=2) token
LFAcrossSlcTile uint(size=2) token
TilesCoord uint(size=16) token
LcuSizeMax uint(size=8) token
PictSize uint(size=16) token
Poc uint(size=16) token
SliceType uint(size= 2) token
SplitTransform bool token
TUSize int(size= 8) token
© ISO 2015 – All rights reserved 1
---------------------- Page: 5 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Coeff int(size=16) token
StrongIntraSmoothing bool token
DispCoord uint(size=14) token
PicSizeInMb uint(size=9) token
NumRefIdxLxActive uint(size= 5) token
RefPicListModif uint(size= 4) token
RefPoc int(size=16) token
MvPredSyntaxElem int(size=16)
SaoSe int(size=9) token
SEI_MD5 uint(size=8) token
Cbf bool token
DBFDisable bool token
DbfSe int(size=8)
weightedPred int(size=16) token
Qp int(size=8) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.synParser
9.2 Texture Decoding
9.2.1 IntraPrediction
FU Name IntraPrediction
FU intraPrediction supports all HEVC intra prediction modes, including all 33
Description
directional modes and the DC and planar modes.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
CUInfo uint(size=16) token
IntraPredMode uint(size= 6) token
SliceAddr uint(size=16) token
PartMode uint(size= 4) token
PictSize uint(size=16) token
SplitTransform bool token
StrongIntraSmoothing bool token
Sample uint(size=8) token
TilesCoord uint(size=16) token
LcuSizeMax uint(size=8) token
Output
Name Token
PredSample uint(size=8) token
Parameter
2 © ISO 2015 – All rights reserved
---------------------- Page: 6 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.intra
9.2.2 selectCU
FU Name selectCU
Actor selectCU depending on whether the current CU is predicted as intra or inter,
Description
the FU adds the residual information to inter or intra prediction.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
CUInfo uint(size=16) token
InterSample uint(size=8) token
IntraSample uint(size=8) token
PartMode uint(size= 4) token
Output
Name Token
Sample uint(size=8) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.intra
9.3 Motion Compensation
9.3.1 InterPrediction
FU Name InterPrediction
Description The FU interPrediction computes the interpolated samples for the inter prediction.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
CUInfo uint(size=16) token
IsBiPredOrLx uint(size=2) token
Mv int (size=16) token
PartMode uint(size=4) token
Poc uint(size=16) token
RefIdx uint(size=3) token
RefList int(size=16) token
Sample uint(size=8) token
SliceType uint(size=2) token
WeightedPredSe int (size=16) token
Output
Name Token
© ISO 2015 – All rights reserved 3
---------------------- Page: 7 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
PredSample uint(size=8) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.inter
9.3.2 DecodedPictureBuffer
FU Name DecodedPictureBuffer
The Decoded Picture Buffer contains all previously decoded pictures needed for
Description
prediction or later output.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
IsBiPredOrLx uint(size=2) token
IsReadOrNewSlc uint(size=1) token
Mv int(size=16) token
PicSize uint(size=16) token
Poc uint(size=16) token
PredCuSize uint(size=7) token
RpsPoc int(size=16) token
Sample uint(size=8) token
Output
Name Token
RefSample uint(size=8) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.inter
9.3.3 GenerateRefList
FU Name GenerateRefList
Description This FU generates reference lists l0 and l1.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
RefPoc uint(size=16) token
RefPicListModif uint(size=4) token
NumRefIdxLXAct uint(size=8) token
Output
Name Token
RefList int(size=16) token
Parameter
4 © ISO 2015 – All rights reserved
---------------------- Page: 8 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.inter
9.3.4 MvComponentPred
FU Name MvComponentPred
Description This FU reconstructs Motion Vectors for the interpolation process.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
CUInfo uint(size=16) token
PartMode uint(size=4) token
PicSize uint(size=16) token
Poc uint(size=16) token
RefList int(size=16) token
RpsPoc int(size=16) token
SliceType uint(size=2) token
SyntaxElem int(size=16) token
SliceAddr uint(size=16) token
TilesCoord uint(size=16) token
LcuSizeMax uint(size=8) token
Output
Name Token
IsBiPredOrLx uint(size=2) token
IsReadOrNewSlice uint(size=1) token
Mv int(size=16) token
PocRef int(size=16) token
PredCuSize uint(size=7) token
RefIdx uint(size=3) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.inter
9.4 Filtering
9.4.1 SaoFilter
FU Name SaoFilter
Description This FU implements the Sample Adaptive Offset filtering stage.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
© ISO 2015 – All rights reserved 5
---------------------- Page: 9 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
IsPicSlcLcu uint(size=2) token
LFAcrossSlcTile uint(size=2) token
PicSize uint(size=16) token
SampleIn uint(size=8) token
SaoSe int(size=9) token
TilesCoord uint(size=16) token
LcuSizeMax uint(size=8) token
Output
Name Token
FiltSample uint(size=8) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.Filters
9.4.2 GenerateBs
FU Name GenerateBs
Description This FU generates boundary strength coefficients for the inloop deblocking filter.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Cbf bool token
CUInfo uint(size=16) token
IsBiPredOrLx uint(size=2) token
LFAcrossSlcTile uint(size=2) token
Mv int(size=16) token
PartMode uint(size=4) token
RefPoc int(size=16) token
SliceAddr uint(size=16) token
SplitTransf bool token
TilesCoord uint(size=16) token
LcuSizeMax uint(size=8) token
Output
Name Token
BS uint(size=2) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.Filters
9.4.3 DeblockingFilter
FU Name DeblockingFilter
6 © ISO 2015 – All rights reserved
---------------------- Page: 10 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Description This FU implements the deblocking filter for Coding Units.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Bs uint(size=2) token
IsPicSlcLcu uint(size=2) token
PicSize uint(size=16) token
Qp int(size=8) token
SampleIn uint(size=8) token
DBFDisable bool token
DbfSe int(size=8)
Output
Name Token
FiltSample uint(size=8) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.Filters
9.4.4 QpGen
FU Name QpGen
Description This FU computes the Qp for 8x8, 16x16, 32x32, and 64x64 blocks.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
TuSize int(size=7) token
Qp int(size=8) token
Output
Name Token
Qp int(size=8) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.Filters
9.5 MD5 check
9.5.1 MD5SplitInfo
FU Name MD5SplitInfo
Description This FU splits the file data into 512 bit units necessary for the MD5 algorithm.
Profiles@levels
HEVC Main Profile
supported
Input
© ISO 2015 – All rights reserved 7
---------------------- Page: 11 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Name Token
Byte uint(size=8) token
SEI_MD5 uint(size=8) token
PicSize uint(size=16) token
Output
Name Token
DataOut uint(size=8) token
Length uint(size=64) token
REF_MD5 uint(size=32) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.common
9.5.2 padding
FU Name padding
Description Data padder
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
LENGTH uint(size=64) token
DATA uint(size=8) token
Output
Name Token
OUT uint(size=8) token
NEWLENGTH uint(size=32) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.common
9.5.3 MD5Shifter
FU Name MD5Shifter
Description Data shifter
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
IN uint(size=8) token
Output
Name Token
OUT uint(size=32) token
Parameter
8 © ISO 2015 – All rights reserved
---------------------- Page: 12 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.common
9.5.4 MD5Compute
FU Name MD5Compute
Description This FU applies the MD5 algorithm and compares it with the MD5 reference key.
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
IN uint(size=32) token
REF uint(size=32) token
NEWLENGTH uint(size=32) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.common
9.6 Inverse transforms
9.6.1 IT_Splitter
FU Name IT_Splitter
Description This FU splits the residual coefficients depending on the size of the block
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
coeff int(size=16) token
size int(size=7) token
Output
Name Token
Coeff_4x4_DST int(size=16) token
Coeff_4x4_IT int(size=16) token
Coeff_8x8 int(size=16) token
Coeff_16x16 int(size=16) token
Coeff_32x32 int(size=16) token
Coeff_skip int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
© ISO 2015 – All rights reserved 9
---------------------- Page: 13 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
9.6.2 IT_Merger
FU Name IT_Merger
Description This FU merges the decoded coefficients of the different IT CU
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Size int(size=8) token
Block_skip int(size=16) token
Block_4x4_DST int(size=16) token
Block_4x4_IT int(size=16) token
Block_8x8 int(size=16) token
Block_16x16 int(size=16) token
Block_32x32 int(size=16) token
Output
Name Token
Block int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.3 Block_Merger
FU Name Block_Merger
Description This FU merges the decoded coefficients of the different IT decoding blocks
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Size int(size=8) token
Block_in int(size=16) token
Output
Name Token
Block int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.4 Transpose_4x4
FU Name Transpose_4x4
Description
10 © ISO 2015 – All rights reserved
---------------------- Page: 14 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Src int(size=16) token
Output
Name Token
Dst int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.5 Transpose_8x8
FU Name Transpose_8x8
Description
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Src int(size=16) token
Output
Name Token
Dst int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.6 Transpose_16x16
FU Name Transpose_16x16
Description
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Src int(size=16) token
Output
Name Token
Dst int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
© ISO 2015 – All rights reserved 11
---------------------- Page: 15 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
9.6.7 Transpose_32x32
FU Name Transpose_32x32
Description
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Src int(size=16) token
Output
Name Token
Dst int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.8 Transpose_32x32
FU Name Transpose_32x32
Description
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Src int(size=16) token
Output
Name Token
Dst int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.9 IT4x4_1d
FU Name IT4x4_1d
Description
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Src int(size=16) token
Output
Name Token
Dst int(size=16) token
12 © ISO 2015 – All rights reserved
---------------------- Page: 16 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.10 IT8x8_1d
FU Name IT8x8_1d
Description
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Src int(size=16) token
Output
Name Token
Dst int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.11 IT16x16_1d
FU Name IT16x16_1d
Description
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
Src int(size=16) token
Output
Name Token
Dst int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.12 IT32x32_1d
FU Name IT32x32_1d
Description
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
© ISO 2015 – All rights reserved 13
---------------------- Page: 17 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Src int(size=16) token
Output
Name Token
Dst int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.13 invDST4x4_1st
FU Name invDST4x4_1st
Description
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
IN int(size=16) token
Output
Name Token
OUT int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
9.6.14 invDST4x4_2nd
FU Name invDST4x4_2nd
Description
Profiles@levels
HEVC Main Profile
supported
Input
Name Token
IN int(size=16) token
Output
Name Token
OUT int(size=16) token
Parameter
Name Description Range
Package
package org.sc29.wg11.mpegh.part2.main.IT
14 © ISO 2015 – All rights reserved
---------------------- Page: 18 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Replace B.1 as follows:
B.1 Value of the RVC descriptions
Value of the RVC descriptions Description
0x00 Unspecified
0x01 Description of MPEG-4 part 2 SP defined as
Top_mpeg4_part2_SP_decoder.xdf
0x02 Description of MPEG4-part 10 CBP defined as
Top_mpeg4_part10_CBP_decoder.xdf
0x03 Description of MPEG-4 part 10 PHP defined as
Top_mpeg4_part10_PHP_decoder.xdf
0x04 . 0xFFFF Reserved
0xFFFF. 0xFFFFFFFF User defined
with
B.1 Value of the RVC descriptions
Value of the RVC descriptions Description
0x00 Unspecified
0x01 Description of MPEG-4 Part 2 Simple Profile
defined as Top_mpeg4_part2_SP_decoder.xdf
0x02 Description of AVC (MPEG-4-Part 10) Constrained
Baseline Profile defined as
Top_mpeg4_part10_CBP_decoder.xdf
0x03 Description of AVC (MPEG-4 Part 10) Progressive
High Profile defined as
Top_mpeg4_part10_PHP_decoder.xdf
0x04 Description of HEVC (MPEG-H Part 2) Main Profile
defined as Top_mpegh_part2_main_decoder.xdf
0x05 . 0xFFFF Reserved
0xFFFF. 0xFFFFFFFF User defined
© ISO 2015 – All rights reserved 15
---------------------- Page: 19 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
Add B.4 as follows:
B.4 FNL of HEVC Main Profile
FNL specification of the HEVC Main Profile decoder (Refer to Top_mpegh_part2_main_decoder.xdf file)
16 © ISO 2015 – All rights reserved
---------------------- Page: 20 ----------------------
ISO/IEC 23002-4:2014/Amd.2:2015(E)
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.