Information technology — MPEG systems technologies — Part 15: Carriage of web resources in ISOBMFF

This document specifies how the format defined in ISO/IEC 14496-12 can be used to store web resources (HTML, JavaScript, CSS, etc.) and defines brands to identify files conforming to this document. It also specifies hypothetical processing for how these files can be consumed by web browsers. The specified storage enables the delivery of synchronized media and web resources as supported by ISO/IEC 14496-12: file download, progressive file download, streaming, broadcast, etc. This document also defines how to signal required web capabilities to process the files. This is done in a way that web profiles defined by other organizations can be signalled in a dedicated box, e.g. the MIME Box, similarly to how it is done in ISO/IEC 14496-30. This document does not define any profiles for web data, only their carriage.

Technologies de l'information — Technologies des systèmes MPEG — Partie 15: Transport de ressources web au format ISOBMFF

General Information

Status
Published
Publication Date
19-Dec-2019
Current Stage
6060 - International Standard published
Start Date
20-Dec-2019
Due Date
16-Feb-2021
Completion Date
20-Dec-2019
Ref Project

Buy Standard

Standard
ISO/IEC 23001-15:2019 - Information technology -- MPEG systems technologies
English language
19 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)

INTERNATIONAL ISO/IEC
STANDARD 23001-15
First edition
2019-12
Information technology — MPEG
systems technologies —
Part 15:
Carriage of web resources in ISOBMFF
Technologies de l'information — Technologies des systèmes MPEG —
Partie 15: Transport de ressources web au format ISOBMFF
Reference number
ISO/IEC 23001-15:2019(E)
©
ISO/IEC 2019

---------------------- Page: 1 ----------------------
ISO/IEC 23001-15: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 23001-15:2019(E)

Contents Page
Foreword .iv
Introduction .v
1 Scope . 1
2 Normative references . 1
3 Terms, definitions and abbreviated terms . 1
3.1 Terms and definitions . 1
3.2 Abbreviated terms . 2
4 Hypothetical processing . 2
4.1 Overview . 2
4.2 General processing models . 2
4.3 Item processing and caching . 3
4.4 Timed sample processing . 3
5 Carriage of web data in ISOBMFF . 4
5.1 Overview . 4
5.2 Timed web resources . 4
5.2.1 Overview . 4
5.2.2 Track layout . 4
5.2.3 Track definitions . 4
5.3 Non-timed web resources . 6
5.3.1 Overview . 6
5.3.2 Web Items . 7
5.4 URLs to web resources embedded in ISOBMFF files. 7
Annex A (informative) Examples . 9
Bibliography .19
© ISO/IEC 2019 – All rights reserved iii

---------------------- Page: 3 ----------------------
ISO/IEC 23001-15: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 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 http:// 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 23001 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 23001-15:2019(E)

Introduction
ISO/IEC 14496-12 specifies a format for the storage of timed resources such as media streams as well
as of resources for which no timed stream structure exists, or when the timed stream structure does
not need to be exposed.
This document specifies the use of ISO/IEC 14496-12 tools for the storage and delivery of web data. The
specified storage is designed to enable enriching audio/video content, as well as audio-only content,
with synchronized, animated, interactive web data, including overlays.
© ISO/IEC 2019 – All rights reserved v

---------------------- Page: 5 ----------------------
INTERNATIONAL STANDARD ISO/IEC 23001-15:2019(E)
Information technology — MPEG systems technologies —
Part 15:
Carriage of web resources in ISOBMFF
1 Scope
This document specifies how the format defined in ISO/IEC 14496-12 can be used to store web resources
(HTML, JavaScript, CSS, etc.) and defines brands to identify files conforming to this document. It also
specifies hypothetical processing for how these files can be consumed by web browsers.
The specified storage enables the delivery of synchronized media and web resources as supported by
ISO/IEC 14496-12: file download, progressive file download, streaming, broadcast, etc.
This document also defines how to signal required web capabilities to process the files. This is done in a
way that web profiles defined by other organizations can be signalled in a dedicated box, e.g. the MIME
Box, similarly to how it is done in ISO/IEC 14496-30.
This document does not define any profiles for web data, only their carriage.
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/IEC 14496-12, Information technology — Coding of audio-visual objects — Part 12: ISO Base Media
file format
3 Terms, definitions and abbreviated terms
3.1 Terms and definitions
For the purposes of this document, the terms and definitions given in ISO/IEC 14496-12 and the
following apply.
ISO and IEC maintain terminological databases for use in standardization at the following addresses:
— ISO Online browsing platform: available at https:// www .iso .org/ obp
— IEC Electropedia: available at http:// www .electropedia .org/
3.1.1
media player
entity capable of parsing an ISOBMFF file and processing the content of its items and tracks
3.1.2
timed web resource
web resource that has a timing structure exposed in the file format for the purpose of time-driven
processing such as seeking or synchronization with other tracks
© ISO/IEC 2019 – All rights reserved 1

---------------------- Page: 6 ----------------------
ISO/IEC 23001-15:2019(E)

3.1.3
web engine
part of a web browser in charge of processing web resources and of rendering them
3.1.4
web resource
data processed by a web engine
3.2 Abbreviated terms
CSS cascading style sheets
HTML Hypertext Markup Language
ISOBFF ISO base media file format
JS JavaScript
4 Hypothetical processing
4.1 Overview
This Clause describes two general hypothetical processing models and corresponding receiver
implementations to consume ISOBMFF files conforming to Clause 5, as well as detailed hypothetical
processing of items and samples carried in the file.
4.2 General processing models
The first model applies when a media player integrates a web engine. In that case, the ISOBMFF file is
processed first by the media player. Track samples and items are extracted from the file. Track samples
are processed synchronously (see 4.4) while items are processed when needed (see 4.3). Both types of
ISOBMFF constructs carry data that is processed by instantiating a web engine. The video decoding
and web engine rendering are then combined, possibly synchronously, for final display. It is depicted in
Figure 1.
NOTE Frame accurate synchronization is a goal but can be hard to achieve as instantaneous processing of the
sample web content can be challenging due to processing loads. The current model guarantees synchronization
at the decoding side and gives the intention to the application that presentation will be synchronized as well, but
this is left to the implementation. At this point, exact processing is handled by the implementation and decode-
ahead processing could be needed.
Figure 1 — Hypothetical processing model when an ISOBMFF file carrying web data is passed to
a media player integrating a web engine
2 © ISO/IEC 2019 – All rights reserved

---------------------- Page: 7 ----------------------
ISO/IEC 23001-15:2019(E)

The second model, depicted in Figure 2, applies when the web engine is initiated prior to the media
player, by loading some web content (e.g. an HTML page) and when that content loads an ISOBMFF file
(e.g. using a video or audio tag) also containing web content.
Figure 2 — Hypothetical processing model for web browser-based playback
4.3 Item processing and caching
In both models, resources stored as items in the ISOBMFF file are extracted from the file and placed in
the cache of the web engine, as if they had been downloaded from a URL given by the composition of the
item’s item_name field (effectively, a relative URL) with the absolute URL of the containing ISOBMFF file,
as defined in ISO/IEC 14496-12.
NOTE Item names are restricted to be relative URLs. Therefore, all resources in the ISOBMFF file come from
the same origin as the ISOBMFF file they are contained in.
EXAMPLE If the base URL of the ISOBMFF file is http:// example .org/ path/ file .mp4 and the item_name is foo.
html, the item content is placed in the cache as if it had been downloaded from http:// example .org/ path/ foo .html.
These resources are then available for the web engine (e.g. through the XmlHttpRequest or Fetch
APIs). This applies even in the case of streaming using ISOBMFF fragments, when items are delivered
progressively, i.e. when MetaBoxes are delivered in segments.
4.4 Timed sample processing
For all track types defined in this document, the following processing model is expected.
A track sample becomes active at the presentation time of that sample. The exact processing of an active
sample depends on the track type, as described in 5.2. Concrete implementations might have to take
into account processing delays to achieve synchronization and might have to pre-fetch resources that
are not embedded in the file. When the sample becomes inactive, i.e. when the next sample becomes
active, the processing of the sample that was previously active stops. And, for all track types, when an
edit list of type ‘empty’ is applied, no sample is active.
The data carried in a media sample is valid for the entire duration of the sample. However, samples may
contain internal timing that makes their presentation evolve over their duration. As a consequence,
when seeking at the beginning or in the middle of the sample active period, the result might not be the
same, even if the data fed to the decoder is the same.
For all tracks defined in this document, if a sample has its sample_has_redundancy flag set, it is
expected that that sample would only be made available by the ISOBMFF parser to the web engine if the
processing of the file starts with this sample. Otherwise, it is expected that the sample be ignored, and
that processing of the current sample is continued for a duration equal to the duration of the ignored
sample, as defined in ISO/IEC 14496-12.
© ISO/IEC 2019 – All rights reserved 3

---------------------- Page: 8 ----------------------
ISO/IEC 23001-15:2019(E)

5 Carriage of web data in ISOBMFF
5.1 Overview
This Clause specifies how tracks (respectively items) can be used to store timed (respectively untimed)
web resources in ISOBMFF files.
5.2 Timed web resources
5.2.1 Overview
Storage of timed web resources can be done using tracks when timed presentation is desired, in
particular when operations such as seeking, fast forwarding or trick play are needed.
Several types of tracks are defined in this document, for different purposes:
— Tracks specified in 5.2.3.1 are made of samples whose content is conformant to W3C HTML. These
tracks are meant to be used as overlay, when playing other media tracks. Samples in these tracks
may embed data conformant to other specifications than W3C HTML, as permitted by W3C HTML,
such as JavaScript or CSS. Such embedding may be needed in an environment where single-track
files are used, such as CMAF. Examples of usages of this type of track are provided in A.2.
— Tracks specified in 5.2.3.2 are made of samples whose content is conformant to W3C WebVTT
carrying metadata. An example of usage of this type of track is given in A.3.
— Tracks specified in 5.2.3.3 are made of samples whose content is text content, without restriction
on the format, meant to be used by a web application. An example of usage of this type of track is
given in A.4.
Some of the track types specified below, specifically in 5.2.3.2 and 5.2.3.3 rely on a webpage being
previously loaded to provide the context for the track content. For those types of tracks, the file should
embed the associate webpage and its resources as items as specified in 5.3.2.
A single file may contain multiple tracks defined in this document. The processing of some tracks
may be required by some other tracks. The selection of which sets of independent tracks to play is
implementation specific. It may be done based on metadata also given in the file (profile capabilities,
language information) or based on user input (e.g. through a graphical user interface).
Tracks carrying web resources may use short duration samples, if the changes are frequent, or long
duration samples. When long duration samples are used, alternatives to using a track may be considered
such as the progressive delivery of items specified in 5.3.
5.2.2 Track layout
Unless specified by an embedding environment (e.g. by an HTML page delivered out-of-band or delivered
in-band and identified as the file entry point as specified in 5.3), the layout of tracks, including of overlay
HTML tracks and images, is specified using the TrackHeaderBox of the different tracks.
NOTE This behaviour is similar to the one specified in ISO/IEC 14496-30.
5.2.3 Track definitions
5.2.3.1 Overlay HTML tracks
5.2.3.1.1 Overview
Images are important web resources. Image sequence tracks, as specified in ISO/IEC 14496-12 or
ISO/IEC 23008-12, can be used to provide image overlays. Overlay HTML tracks as specified in this
4 © ISO/IEC 2019 – All rights reserved

---------------------- Page: 9 ----------------------
ISO/IEC 23001-15:2019(E)

subclause may also be used to provide advanced overlays, with or without interactivity, including image
overlays, when the HTML content reference images (either in tracks or as items).
5.2.3.1.2 Content signalling
The brand 'htmt' is used to signal the presence of tracks with the following constraints:
— The 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.