ISO/IEC 14496-15:2019/Amd 1:2020
(Amendment)Information technology — Coding of audio-visual objects — Part 15: Carriage of network abstraction layer (NAL) unit structured video in the ISO base media file format — Amendment 1: Improved support for tiling and layering
Information technology — Coding of audio-visual objects — Part 15: Carriage of network abstraction layer (NAL) unit structured video in the ISO base media file format — Amendment 1: Improved support for tiling and layering
Technologies de l'information — Codage des objets audiovisuels — Partie 15: Transport de vidéo structurée en unités NAL sur la couche réseau au format ISO de base pour les fichiers médias — Amendment 1: Titre manque
General Information
Relations
Buy Standard
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD 14496-15
Fifth edition
2019-09
AMENDMENT 1
2020-12
Information technology — Coding of
audio-visual objects —
Part 15:
Carriage of network abstraction layer
(NAL) unit structured video in the ISO
base media file format
AMENDMENT 1: Improved support for
tiling and layering
Technologies de l'information — Codage des objets audiovisuels —
Partie 15: Transport de vidéo structurée en unités NAL sur la couche
réseau au format ISO de base pour les fichiers médias
AMENDEMENT 1: .
Reference number
ISO/IEC 14496-15:2019/Amd.1:2020(E)
©
ISO/IEC 2020
---------------------- Page: 1 ----------------------
ISO/IEC 14496-15:2019/Amd.1:2020(E)
COPYRIGHT PROTECTED DOCUMENT
© ISO/IEC 2020
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
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
ii © ISO/IEC 2020 – All rights reserved
---------------------- Page: 2 ----------------------
ISO/IEC 14496-15:2019/Amd.1:2020(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 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) or the IEC
list of patent declarations received (see https:// patents .iec .ch).
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 Joint Technical Committee ISO/IEC JTC 1, Information technology,
Subcommittee SC 29, Coding of audio, picture, multimedia and hypermedia information.
A list of all parts in the ISO/IEC 14496 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.
© ISO/IEC 2020 – All rights reserved iii
---------------------- Page: 3 ----------------------
ISO/IEC 14496-15:2019/Amd.1:2020(E)
Information technology — Coding of audio-visual
objects —
Part 15:
Carriage of network abstraction layer (NAL) unit
structured video in the ISO base media file format
AMENDMENT 1: Improved support for tiling and layering
Clause 4
At the end of Clause 4, add a new subclause as follows:
4.13 Alternative extraction source track grouping
Members of the track group with track_group_type equal to 'alte' are alternatives to be used
as a source for 'scal' or 'sabt' track reference. The value of (flags & 1) shall be equal to 1 in a
TrackGroupTypeBox of type 'alte' to indicate the uniqueness of track_group_id as specified in
ISO/IEC 14496-12.
A 'scal' or 'sabt' track reference may refer to a track_group_id value of an 'alte' track group. As
implied by the general semantics of a track reference to a track_group_id specified in ISO/IEC 14496-12,
any single track of an 'alte' track group is a valid source for extraction as specified in A.3 and A.7 or
for bitstream reconstruction from tile tracks as specified in subclause 10.5.4.
8.3.3.1.3
Add the following sentence at the end of the semantics of nalUnit in paragraph 13:
When one or more SEI NAL units containing an SEI manifest SEI message and/or an SEI prefix indication
SEI message are available, they should be stored as instances of nalUnit.
9.2
Replace the paragraph that starts with ‘When the samples of a track contain”, including the note, with
the following text:
When the samples of a track contain temporal sub-layers of an HEVC base layer but do not contain,
natively or through extraction, the temporal sub-layer with TemporalId equal to 0 of an HEVC base
layer, an 'hvc2', or 'hev2' sample entry shall be used. When the samples of a track contain, natively or
through extraction, an HEVC compatible base layer or a temporal subset of an HEVC base layer including
a sub-layer with TemporalId equal to 0, an 'hvc1', 'hev1', 'hvc2', 'hev2', 'hvc3', or 'hev3' sample
entry shall be used.
NOTE When a sample entry type 'hvc2', 'hev2', 'hvc3' or 'hev3' is used in a track containing the base
layer, parsers complying only with non-layered HEVC storage specified in Clause 8 are not able to process the track.
© ISO/IEC 2020 – All rights reserved 1
---------------------- Page: 4 ----------------------
ISO/IEC 14496-15:2019/Amd.1:2020(E)
9.5.3.1.1
In the definition, add 'hvc3' and 'hev3' to the lists in both the "Sample Entry and Box types" and
"Mandatory" rows.
In the second paragraph below the definition, replace:
When the sample entry name is 'hev2'
with:
When the sample entry name is 'hev2' or 'hev3'
In the third paragraph below the definition, replace:
or when the sample entry name is 'hev1' or 'hev2'
with:
or when the sample entry name is 'hev1', 'hev2' or 'hev3'
Replace the paragraph immediately above NOTE 2 with the following:
In case two parameter sets with different content but using the same ID are present, it may not be
possible to use a single sample entry of type 'hvc1', 'hvc2', 'hvc3' or 'lhv1'; file packagers should
create either different sample entries of type 'hvc1', 'hvc2, 'hvc3' or 'lhv1', or use in-band parameter
sets through 'hev1', 'hev2', 'hev3' or 'lhe1' sample entries.
Replace the two paragraphs immediately below NOTE 3 with the following:
For an HEVC or L-HEVC bitstream carried in more than one track, when the sample entry name of
the base track is 'hvc1', 'hvc2' or 'hvc3', the sample entry name of other tracks carrying the same
bitstream shall be 'hvc2', 'hvc3' or 'lhv1', and when the sample entry name of the base track is
'hev1', 'hev2' or 'hev3', the sample entry name of other tracks carrying the same bitstream shall be
'hev2', 'hev3' or 'lhe1'.
For an L-HEVC bitstream whose base layer is an AVC bitstream, when the sample entry name of the
base track is 'avc1' or 'avc2', the sample entry name of the other tracks carrying the associated
L-HEVC bitstream shall be 'hvc2', 'hvc3', or 'lhv1', and when the sample entry name of the base track
is 'avc3' or 'avc4', the sample entry name of the other HEVC tracks carrying the associated L-HEVC
bitstream shall be 'hev2', 'hev3' or 'lhe1'.
In both NOTE 6 and the sentence immediately following NOTE 6, replace (two occurrences):
'hvc1', 'hev1', 'hvc2', or 'hev2'
with:
'hvc1', 'hev1', 'hvc2', 'hev2', 'hvc3' or 'hev3'
2 © ISO/IEC 2020 – All rights reserved
---------------------- Page: 5 ----------------------
ISO/IEC 14496-15:2019/Amd.1:2020(E)
Replace Table 11 with the following:
Table 11 — Use of sample entries for HEVC and L-HEVC tracks
sample entry with configuration meaning
name records
'hvc1' or 'hev1' HEVC Configuration Only A plain HEVC track without NAL units with
nuh_layer_id greater than 0; Extractors and
aggregators shall not be present.
'hvc1' or 'hev1' HEVC and L-HEVC An L-HEVC track with both NAL units with
Configurations nuh_layer_id equal to 0 and NAL units with
nuh_layer_id greater than 0; Extractors and
aggregators shall not be present.
'hvc2' or 'hev2' HEVC Configuration Only A plain HEVC track without NAL units with
nuh_layer_id greater than 0; Extractors may be
present and used to reference NAL units;
constructor_type shall be equal to 0 or 2
in extractors; Aggregators may be present to
contain and reference NAL units.
'hvc2' or 'hev2' HEVC and L-HEVC An L-HEVC track with both NAL units with
Configurations nuh_layer_id equal to 0 and NAL units with
nuh_layer_id greater than 0; Extractors and
aggregators may be present; Extractors may
reference any NAL units;
constructor_type shall be equal to 0 or 2 in
extractors; Aggregators may both contain and
reference any NAL units.
'hvc3' or 'hev3' HEVC Configuration Only A plain HEVC track without NAL units with
nuh_layer_id greater than 0; Extractors may be
present and used to reference NAL units;
constructor_type shall be equal to 0, 2, 3, 4, 5
or 6 in extractors; Aggregators may be present
to contain and reference NAL units.
'hvc3' or 'hev3' HEVC and L-HEVC An L-HEVC track with both NAL units with
Configurations nuh_layer_id equal to 0 and NAL units with
nuh_layer_id greater than 0; Extractors and
aggregators may be present; Extractors may
reference any NAL units;
constructor_type shall be equal to 0, 2, 3,
4, 5 or 6 in extractors; Aggregators may both
contain and reference any NAL units.
'lhv1', 'lhe1' L-HEVC Configuration Only An L-HEVC track with NAL units with
nuh_layer_id greater than 0 and without NAL
units with nuh_layer_id equal to 0; Extractors
shall not be present; Aggregators may be pres-
ent to contain and reference NAL units.
9.5.3.1.3
In the second sentence, replace:
When the sample entry is 'hvc2' or 'hev2'
with:
When the sample entry is 'hvc2', 'hev2', 'hvc3' or 'hev3'
© ISO/IEC 2020 – All rights reserved 3
---------------------- Page: 6 ----------------------
ISO/IEC 14496-15:2019/Amd.1:2020(E)
9.5.4
In the second and third list items, replace:
the sample entry type is 'hvc2' or 'hev2'
with:
the sample entry type is 'hvc2', 'hev2', 'hvc3' or 'hev3'
9.5.5
In list item 3, replace:
if the sample entry type is 'hvc2' or 'hev2' and the track contains extractors,
with:
if the sample entry type is 'hvc2', 'hev2', 'hvc3' or 'hev3' and the track contains extractors,
In list item 4, replace:
Otherwise, if the sample entry type is 'hvc2' or 'hev2'
with:
Otherwise, if the sample entry type is 'hvc2', 'hev2', 'hvc3' or 'hev3'
9.5.8
In the second sentence, replace:
When included in an 'hvc2' or 'hev2' track that is not the base track and contains extractors,
with:
When included in an 'hvc2', 'hvc3', 'hev2', or 'hev3' track that is not the base track and that contains
extractors,
In the paragraph immediately after the NOTE, replace:
The presence of the 'sync', 'roll', and 'rap' sample groups in 'hvc2', 'hev2', 'lhv1', or 'lhe1' tracks
with:
The presence of the 'sync', 'roll', and 'rap' sample groups in 'hvc2', 'hvc3', 'hev2', 'hev3', 'lhv1',
or 'lhe1' tracks
10.5.1
In the first paragraph, replace:
For such cases, tile tracks may be created using the HEVCTileSampleEntry or LHEVCTileSampleEntry
sample description format
4 © ISO/IEC 2020 – All rights reserved
---------------------- Page: 7 ----------------------
ISO/IEC 14496-15:2019/Amd.1:2020(E)
with:
For such cases, tile tracks may be created using the HEVCTileSampleEntry, HEVCTileSSHInfoSampleEntry
or LHEVCTileSampleEntry sample description format
In the second paragraph, replace:
The sample entry type for an HEVC tile track is 'hvt1'
with:
The sample entry type for an HEVC tile track is 'hvt1' or 'hvt3'
Add the following paragraph at the end of subclause 10.5.1:
When a timed metadata track is linked to a tile base track with a 'cdsc' track reference, it describes the
HEVC video bitstream carried by the tile base track and all the associated tile tracks, and in this case
the timed metadata track shall not be linked to the associated tile tracks.
10.5.4
in the first paragraph, add the following text at the end of the first sentence:
When a 'sabt' track reference points to a track_group_id of an 'alte' track group, any single track of
the 'alte' track group is a valid tile track to be used in the bitstream reconstruction.
10.5.5
At the end of 10.5.5, add new subclauses as follows:
10.5.6 HEVC Tile Track with Slice Segment Header Info
10.5.6.1 Definition
'hvt3'
Sample Entry Type:
Container: Sample Description Box ('stsd')
Mandatory: No
Quantity: Zero or more sample entries may be present
An 'hvt3' track shall have a 'tbas' track reference to an HEVC tile base track. The specifications for
HEVC tile track specified in 10.5 apply to the 'hvt3' track. The width and height of the VisualSampleEntry
for an HEVC tile track (sample entry type 'hvt3') shall be set to the width and height of the minimum
bounding box enclosing all tile regions contained in the track. The layout information in the track
header (i.e. layer, matrix, width and height) of an HEVC tile track shall be ignored by file parsers.
CleanApertureBox and PixelAspectRatioBox shall not be present in an 'hvt3' sample description.
For each VCL NAL unit in 'hvt3' tracks there shall be a preceding SliceSegmentHeaderInfo NAL-unit-
like structure that documents its slice segment header length.
NOTE Even though SliceSegmentHeaderInfo NAL-unit-like structures are informational in nature, client
implementations can rely on their presence for correct behaviour and performance reasons. Signalling a track as
'hvt3' allows such clients to check compatibility.
© ISO/IEC 2020 – All rights reserved 5
---------------------- Page: 8 ----------------------
ISO/IEC 14496-15:2019/Amd.1:2020(E)
10.5.6.2 Syntax
class HEVCTileSSHInfoSampleEntry() extends VisualSampleEntry ('hvt3'){
HEVCTileConfigurationBox config(); // optional
}
10.5.6.3 Semantics
The constraints and semantics of HEVCTileSSHInfoSampleEntry are identical to those of
HEVCTileSampleEntry as specified in subclause 10.5.2.3.
10.6 HEVC slice segment data track
10.6.1 Overview
The general definition of sample format as provided in subclause 4.3.3 does not apply to the definition
of ‘hvt2’ tracks.
The sample format of an 'hvt2' track consists of one and only one instance of the HEVC syntax elements
slice_segment_data( ) and rbsp_slice_segment_trailing_bits( ) of an independent slice segment. No other
data is present in samples of 'hvt2' tracks.
'hvt2' tracks avoid the need to have a slice segment header redundantly present for applications where
the slice segment header is adjusted depending on which composition of tracks is merged to a bitstream
to be decoded. Appropriate slice segment headers for an 'hvt2' track are present in extractor tracks
that include samples from the 'hvt2' tracks by reference of type 'scal'. It is not possible to process
an 'hvt2' track without an 'hvc2', 'hev2', 'hvc3', or 'hev3' track that contains slice segment headers
natively and the respective slice segment data by reference from the 'hvt2' track through extractors.
track_in_movie shall be equal to 0 in the TrackHeaderBox of 'hvt2' tracks.
10.6.2 Sample entry name and format for HEVC slice segment data tracks
10.6.2.1 Definition
'hvt2'
Sample Entry Type:
Container: Sample Description Box ('stsd')
Mandatory: No
Quantity: Zero or more sample entries may be present
This sample entry describes the media samples of an HEVC slice segment data track. The width and
height of the VisualSampleEntry for an HEVC slice segment data track (sample entry type 'hvt2') shall
be set to the width and height of the minimum bounding box enclosing the independent slice segments
contained in the track. The layout information in the track header (i.e. layer, matrix, width and
height) of an HEVC slice segment data track shall be ignored by file parsers. CleanApertureBox and
PixelAspectRatioBox shall not be present in an 'hvt2' sample description.
The sample format of an 'hvt2' track shall consist of one and only one instance of the HEVC syntax
elements slice_segment_data( ) and rbsp_slice_segment_trailing_bits( ) of a typically independent slice
segment. No other data shall be present in samples of 'hvt2' tracks.
10.6.2.2 Syntax
class HEVCSliceSegmentDataSampleEntry() extends VisualSampleEntry ('hvt2'){
HEVCTileConfigurationBox config(); // optional
}
6 © ISO/IEC 2020 – All rights reserved
---------------------- Page: 9 ----------------------
ISO/IEC 14496-15:2019/Amd.1:2020(E)
10.6.2.3 Semantics
The HEVCSliceSegmentDataSampleEntry shall not contain any HEVCConfigurationBox,
LHEVCConfigurationBox or MPEG4ExtensionDescriptorsBox; these boxes are found in the sample
description of the track containing extractors for including the slice segment data by reference. Other
optional boxes may be included.
Optionally, the HEVCSliceSegmentDataSampleEntry may contain one HEVCTileConfigurationBox, used
to indicate the tier and level information in the case the slice segment data in this track is for a motion-
constrained tile or tile set.
Compressorname in the base class VisualSampleEntry indicates the name of the compressor used
with the value "\025HEVC Slice Data Coding" being recommended; the first byte is a count of the
remaining bytes, here represented by \025, which (being octal 25) is 21 (decimal), the number of
bytes in the rest of the string.
All 'hvt2' tracks referenced by the same extractor track and the extractor track shall share the same
timescale.
NOTE If an 'hvt2' track is removed from a file, all extractor tracks that refence the 'hvt2' track have to
be removed too. If an extractor track is removed from a file, all 'hvt2' tracks that the extractor track references
ought to be removed too provided that there is no other extractor track referencing them.
A.3.1
In the final paragraph, add the following text at the end of the first sentence:
When a 'scal' track reference points to a track_group_id of an 'alte' track group, any single track of
the 'alte' track group is a valid source for extraction.
A.7.1
Add the following items in the list in the second paragraph:
c) A sample constructor from a track group extracts, by reference, NAL unit data (either entire NAL
unit or NAL unit payload) from a sample of another track or track in a track group.
d) A reference constructor allows referencing default constructors declared in a list in sample entry,
with optional override of default constructor fields.
e) A NAL unit start const
...
FINAL
ISO/IEC
AMENDMENT
DRAFT
14496-15:2019
FDAM 1
ISO/IEC JTC 1/SC 29
Information technology — Coding of
Secretariat: JISC
audio-visual objects —
Voting begins on:
2020-09-17
Part 15:
Voting terminates on:
Carriage of network abstraction layer
2020-11-12
(NAL) unit structured video in the ISO
base media file format
AMENDMENT 1: Improved support for
tiling and layering
Technologies de l'information — Codage des objets audiovisuels —
Partie 15: Transport de vidéo structurée en unités NAL sur la couche
réseau au format ISO de base pour les fichiers médias
AMENDEMENT 1: .
RECIPIENTS OF THIS DRAFT ARE INVITED TO
SUBMIT, WITH THEIR COMMENTS, NOTIFICATION
OF ANY RELEVANT PATENT RIGHTS OF WHICH
THEY ARE AWARE AND TO PROVIDE SUPPOR TING
DOCUMENTATION.
IN ADDITION TO THEIR EVALUATION AS
Reference number
BEING ACCEPTABLE FOR INDUSTRIAL, TECHNO-
ISO/IEC 14496-15:2019/FDAM 1:2020(E)
LOGICAL, COMMERCIAL AND USER PURPOSES,
DRAFT INTERNATIONAL STANDARDS MAY ON
OCCASION HAVE TO BE CONSIDERED IN THE
LIGHT OF THEIR POTENTIAL TO BECOME STAN-
DARDS TO WHICH REFERENCE MAY BE MADE IN
©
NATIONAL REGULATIONS. ISO/IEC 2020
---------------------- Page: 1 ----------------------
ISO/IEC 14496-15:2019/FDAM 1:2020(E)
COPYRIGHT PROTECTED DOCUMENT
© ISO/IEC 2020
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
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
ii © ISO/IEC 2020 – All rights reserved
---------------------- Page: 2 ----------------------
ISO/IEC 14496-15:2019/FDAM 1:2020(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 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) or the IEC
list of patent declarations received (see https:// patents .iec .ch).
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 Joint Technical Committee ISO/IEC JTC 1, Information technology,
Subcommittee SC 29, Coding of audio, picture, multimedia and hypermedia information.
A list of all parts in the ISO/IEC 14496 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.
© ISO/IEC 2020 – All rights reserved iii
---------------------- Page: 3 ----------------------
ISO/IEC 14496-15:2019/FDAM 1:2020(E)
Information technology — Coding of audio-visual
objects —
Part 15:
Carriage of network abstraction layer (NAL) unit
structured video in the ISO base media file format
AMENDMENT 1: Improved support for tiling and layering
Clause 4
At the end of Clause 4, add a new subclause as follows:
4.13 Alternative extraction source track grouping
Members of the track group with track_group_type equal to 'alte' are alternatives to be used
as a source for 'scal' or 'sabt' track reference. The value of (flags & 1) shall be equal to 1 in a
TrackGroupTypeBox of type 'alte' to indicate the uniqueness of track_group_id as specified in
ISO/IEC 14496-12.
A 'scal' or 'sabt' track reference may refer to a track_group_id value of an 'alte' track group. As
implied by the general semantics of a track reference to a track_group_id specified in ISO/IEC 14496-12,
any single track of an 'alte' track group is a valid source for extraction as specified in A.3 and A.7 or
for bitstream reconstruction from tile tracks as specified in subclause 10.5.4.
8.3.3.1.3
Add the following sentence at the end of the semantics of nalUnit in paragraph 13:
When one or more SEI NAL units containing an SEI manifest SEI message and/or an SEI prefix indication
SEI message are available, they should be stored as instances of nalUnit.
9.2
Replace the paragraph that starts with ‘When the samples of a track contain”, including the note, with
the following text:
When the samples of a track contain temporal sub-layers of an HEVC base layer but do not contain,
natively or through extraction, the temporal sub-layer with TemporalId equal to 0 of an HEVC base
layer, an 'hvc2', or 'hev2' sample entry shall be used. When the samples of a track contain, natively or
through extraction, an HEVC compatible base layer or a temporal subset of an HEVC base layer including
a sub-layer with TemporalId equal to 0, an 'hvc1', 'hev1', 'hvc2', 'hev2', 'hvc3', or 'hev3' sample
entry shall be used.
NOTE When a sample entry type 'hvc2', 'hev2', 'hvc3' or 'hev3' is used in a track containing the base
layer, parsers complying only with non-layered HEVC storage specified in Clause 8 are not able to process the track.
© ISO/IEC 2020 – All rights reserved 1
---------------------- Page: 4 ----------------------
ISO/IEC 14496-15:2019/FDAM 1:2020(E)
9.5.3.1.1
In the definition, add 'hvc3' and 'hev3' to the lists in both the "Sample Entry and Box types" and
"Mandatory" rows.
In the second paragraph below the definition, replace:
When the sample entry name is 'hev2'
with:
When the sample entry name is 'hev2' or 'hev3'
In the third paragraph below the definition, replace:
or when the sample entry name is 'hev1' or 'hev2'
with:
or when the sample entry name is 'hev1', 'hev2' or 'hev3'
Replace the paragraph immediately above NOTE 2 with the following:
In case two parameter sets with different content but using the same ID are present, it may not be
possible to use a single sample entry of type 'hvc1', 'hvc2', 'hvc3' or 'lhv1'; file packagers should
create either different sample entries of type 'hvc1', 'hvc2, 'hvc3' or 'lhv1', or use in-band parameter
sets through 'hev1', 'hev2', 'hev3' or 'lhe1' sample entries.
Replace the two paragraphs immediately below NOTE 3 with the following:
For an HEVC or L-HEVC bitstream carried in more than one track, when the sample entry name of
the base track is 'hvc1', 'hvc2' or 'hvc3', the sample entry name of other tracks carrying the same
bitstream shall be 'hvc2', 'hvc3' or 'lhv1', and when the sample entry name of the base track is
'hev1', 'hev2' or 'hev3', the sample entry name of other tracks carrying the same bitstream shall be
'hev2', 'hev3' or 'lhe1'.
For an L-HEVC bitstream whose base layer is an AVC bitstream, when the sample entry name of the
base track is 'avc1' or 'avc2', the sample entry name of the other tracks carrying the associated
L-HEVC bitstream shall be 'hvc2', 'hvc3', or 'lhv1', and when the sample entry name of the base track
is 'avc3' or 'avc4', the sample entry name of the other HEVC tracks carrying the associated L-HEVC
bitstream shall be 'hev2', 'hev3' or 'lhe1'.
In both NOTE 6 and the sentence immediately following NOTE 6, replace (two occurrences):
'hvc1', 'hev1', 'hvc2', or 'hev2'
with:
'hvc1', 'hev1', 'hvc2', 'hev2', 'hvc3' or 'hev3'
2 © ISO/IEC 2020 – All rights reserved
---------------------- Page: 5 ----------------------
ISO/IEC 14496-15:2019/FDAM 1:2020(E)
Replace Table 11 with the following:
Table 11 — Use of sample entries for HEVC and L-HEVC tracks
sample entry with configuration meaning
name records
'hvc1' or 'hev1' HEVC Configuration Only A plain HEVC track without NAL units with
nuh_layer_id greater than 0; Extractors and
aggregators shall not be present.
'hvc1' or 'hev1' HEVC and L-HEVC An L-HEVC track with both NAL units with
Configurations nuh_layer_id equal to 0 and NAL units with
nuh_layer_id greater than 0; Extractors and
aggregators shall not be present.
'hvc2' or 'hev2' HEVC Configuration Only A plain HEVC track without NAL units with
nuh_layer_id greater than 0; Extractors may be
present and used to reference NAL units;
constructor_type shall be equal to 0 or 2
in extractors; Aggregators may be present to
contain and reference NAL units.
'hvc2' or 'hev2' HEVC and L-HEVC An L-HEVC track with both NAL units with
Configurations nuh_layer_id equal to 0 and NAL units with
nuh_layer_id greater than 0; Extractors and
aggregators may be present; Extractors may
reference any NAL units;
constructor_type shall be equal to 0 or 2 in
extractors; Aggregators may both contain and
reference any NAL units.
'hvc3' or 'hev3' HEVC Configuration Only A plain HEVC track without NAL units with
nuh_layer_id greater than 0; Extractors may be
present and used to reference NAL units;
constructor_type shall be equal to 0, 2, 3, 4, 5
or 6 in extractors; Aggregators may be present
to contain and reference NAL units.
'hvc3' or 'hev3' HEVC and L-HEVC An L-HEVC track with both NAL units with
Configurations nuh_layer_id equal to 0 and NAL units with
nuh_layer_id greater than 0; Extractors and
aggregators may be present; Extractors may
reference any NAL units;
constructor_type shall be equal to 0, 2, 3,
4, 5 or 6 in extractors; Aggregators may both
contain and reference any NAL units.
'lhv1', 'lhe1' L-HEVC Configuration Only An L-HEVC track with NAL units with
nuh_layer_id greater than 0 and without NAL
units with nuh_layer_id equal to 0; Extractors
shall not be present; Aggregators may be pres-
ent to contain and reference NAL units.
9.5.3.1.3
In the second sentence, replace:
When the sample entry is 'hvc2' or 'hev2'
with:
When the sample entry is 'hvc2', 'hev2', 'hvc3' or 'hev3'
© ISO/IEC 2020 – All rights reserved 3
---------------------- Page: 6 ----------------------
ISO/IEC 14496-15:2019/FDAM 1:2020(E)
9.5.4
In the second and third list items, replace:
the sample entry type is 'hvc2' or 'hev2'
with:
the sample entry type is 'hvc2', 'hev2', 'hvc3' or 'hev3'
9.5.5
In list item 3, replace:
if the sample entry type is 'hvc2' or 'hev2' and the track contains extractors,
with:
if the sample entry type is 'hvc2', 'hev2', 'hvc3' or 'hev3' and the track contains extractors,
In list item 4, replace:
Otherwise, if the sample entry type is 'hvc2' or 'hev2'
with:
Otherwise, if the sample entry type is 'hvc2', 'hev2', 'hvc3' or 'hev3'
9.5.8
In the second sentence, replace:
When included in an 'hvc2' or 'hev2' track that is not the base track and contains extractors,
with:
When included in an 'hvc2', 'hvc3', 'hev2', or 'hev3' track that is not the base track and that contains
extractors,
In the paragraph immediately after the NOTE, replace:
The presence of the 'sync', 'roll', and 'rap' sample groups in 'hvc2', 'hev2', 'lhv1', or 'lhe1' tracks
with:
The presence of the 'sync', 'roll', and 'rap' sample groups in 'hvc2', 'hvc3', 'hev2', 'hev3', 'lhv1',
or 'lhe1' tracks
10.5.1
In the first paragraph, replace:
For such cases, tile tracks may be created using the HEVCTileSampleEntry or LHEVCTileSampleEntry
sample description format
4 © ISO/IEC 2020 – All rights reserved
---------------------- Page: 7 ----------------------
ISO/IEC 14496-15:2019/FDAM 1:2020(E)
with:
For such cases, tile tracks may be created using the HEVCTileSampleEntry, HEVCTileSSHInfoSampleEntry
or LHEVCTileSampleEntry sample description format
In the second paragraph, replace:
The sample entry type for an HEVC tile track is 'hvt1'
with:
The sample entry type for an HEVC tile track is 'hvt1' or 'hvt3'
Add the following paragraph at the end of subclause 10.5.1:
When a timed metadata track is linked to a tile base track with a 'cdsc' track reference, it describes the
HEVC video bitstream carried by the tile base track and all the associated tile tracks, and in this case
the timed metadata track shall not be linked to the associated tile tracks.
10.5.4
in the first paragraph, add the following text at the end of the first sentence:
When a 'sabt' track reference points to a track_group_id of an 'alte' track group, any single track of
the 'alte' track group is a valid tile track to be used in the bitstream reconstruction.
10.5.5
At the end of 10.5.5, add new subclauses as follows:
10.5.6 HEVC Tile Track with Slice Segment Header Info
10.5.6.1 Definition
'hvt3'
Sample Entry Type:
Container: Sample Description Box ('stsd')
Mandatory: No
Quantity: Zero or more sample entries may be present
An 'hvt3' track shall have a 'tbas' track reference to an HEVC tile base track. The specifications for
HEVC tile track specified in 10.5 apply to the 'hvt3' track. The width and height of the VisualSampleEntry
for an HEVC tile track (sample entry type 'hvt3') shall be set to the width and height of the minimum
bounding box enclosing all tile regions contained in the track. The layout information in the track
header (i.e. layer, matrix, width and height) of an HEVC tile track shall be ignored by file parsers.
CleanApertureBox and PixelAspectRatioBox shall not be present in an 'hvt3' sample description.
For each VCL NAL unit in 'hvt3' tracks there shall be a preceding SliceSegmentHeaderInfo NAL-unit-
like structure that documents its slice segment header length.
NOTE Even though SliceSegmentHeaderInfo NAL-unit-like structures are informational in nature, client
implementations can rely on their presence for correct behaviour and performance reasons. Signalling a track as
'hvt3' allows such clients to check compatibility.
© ISO/IEC 2020 – All rights reserved 5
---------------------- Page: 8 ----------------------
ISO/IEC 14496-15:2019/FDAM 1:2020(E)
10.5.6.2 Syntax
class HEVCTileSSHInfoSampleEntry() extends VisualSampleEntry ('hvt3'){
HEVCTileConfigurationBox config(); // optional
}
10.5.6.3 Semantics
The constraints and semantics of HEVCTileSSHInfoSampleEntry are identical to those of
HEVCTileSampleEntry as specified in subclause 10.5.2.3.
10.6 HEVC slice segment data track
10.6.1 Overview
The general definition of sample format as provided in subclause 4.3.3 does not apply to the definition
of ‘hvt2’ tracks.
The sample format of an 'hvt2' track consists of one and only one instance of the HEVC syntax elements
slice_segment_data( ) and rbsp_slice_segment_trailing_bits( ) of an independent slice segment. No other
data is present in samples of 'hvt2' tracks.
'hvt2' tracks avoid the need to have a slice segment header redundantly present for applications where
the slice segment header is adjusted depending on which composition of tracks is merged to a bitstream
to be decoded. Appropriate slice segment headers for an 'hvt2' track are present in extractor tracks
that include samples from the 'hvt2' tracks by reference of type 'scal'. It is not possible to process
an 'hvt2' track without an 'hvc2', 'hev2', 'hvc3', or 'hev3' track that contains slice segment headers
natively and the respective slice segment data by reference from the 'hvt2' track through extractors.
track_in_movie shall be equal to 0 in the TrackHeaderBox of 'hvt2' tracks.
10.6.2 Sample entry name and format for HEVC slice segment data tracks
10.6.2.1 Definition
'hvt2'
Sample Entry Type:
Container: Sample Description Box ('stsd')
Mandatory: No
Quantity: Zero or more sample entries may be present
This sample entry describes the media samples of an HEVC slice segment data track. The width and
height of the VisualSampleEntry for an HEVC slice segment data track (sample entry type 'hvt2') shall
be set to the width and height of the minimum bounding box enclosing the independent slice segments
contained in the track. The layout information in the track header (i.e. layer, matrix, width and
height) of an HEVC slice segment data track shall be ignored by file parsers. CleanApertureBox and
PixelAspectRatioBox shall not be present in an 'hvt2' sample description.
The sample format of an 'hvt2' track shall consist of one and only one instance of the HEVC syntax
elements slice_segment_data( ) and rbsp_slice_segment_trailing_bits( ) of a typically independent slice
segment. No other data shall be present in samples of 'hvt2' tracks.
10.6.2.2 Syntax
class HEVCSliceSegmentDataSampleEntry() extends VisualSampleEntry ('hvt2'){
HEVCTileConfigurationBox config(); // optional
}
6 © ISO/IEC 2020 – All rights reserved
---------------------- Page: 9 ----------------------
ISO/IEC 14496-15:2019/FDAM 1:2020(E)
10.6.2.3 Semantics
The HEVCSliceSegmentDataSampleEntry shall not contain any HEVCConfigurationBox,
LHEVCConfigurationBox or MPEG4ExtensionDescriptorsBox; these boxes are found in the sample
description of the track containing extractors for including the slice segment data by reference. Other
optional boxes may be included.
Optionally, the HEVCSliceSegmentDataSampleEntry may contain one HEVCTileConfigurationBox, used
to indicate the tier and level information in the case the slice segment data in this track is for a motion-
constrained tile or tile set.
Compressorname in the base class VisualSampleEntry indicates the name of the compressor used
with the value "\025HEVC Slice Data Coding" being recommended; the first byte is a count of the
remaining bytes, here represented by \025, which (being octal 25) is 21 (decimal), the number of
bytes in the rest of the string.
All 'hvt2' tracks referenced by the same extractor track and the extractor track shall share the same
timescale.
NOTE If an 'hvt2' track is removed from a file, all extractor tracks that refence the 'hvt2' track have to
be removed too. If an extractor track is removed from a file, all 'hvt2' tracks that the extractor track references
ought to be removed too provided that there is no other extractor track referencing them.
A.3.1
In the final paragraph, add the following text at the end of the first sentence:
When a 'scal' track reference points to a track_group_id of an 'alte' track group, any single track of
the 'alte' track group is a valid source for extraction.
A.7.1
Add the following items in the list in the second paragraph:
c) A sample constructor from a track group extracts, by reference, NAL unit data (either ent
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.