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
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.