Information technology — JPEG Systems — Part 10: Reference software — Amendment 1: Additional reference software implementations

Titre manque — Partie 10: Titre manque — Amendement 1: Implémentations de logiciels de référence supplémentaires

General Information

Status
Not Published
Current Stage
6000 - International Standard under publication
Start Date
09-Sep-2025
Completion Date
13-Sep-2025
Ref Project

Relations

Draft
ISO/IEC 19566-10:2024/PRF Amd 1 - Information technology — JPEG Systems — Part 10: Reference software — Amendment 1: Additional reference software implementations Released:11. 08. 2025
English language
63 pages
sale 15% off
Preview
sale 15% off
Preview
Draft
REDLINE ISO/IEC 19566-10:2024/PRF Amd 1 - Information technology — JPEG Systems — Part 10: Reference software — Amendment 1: Additional reference software implementations Released:11. 08. 2025
English language
63 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)


International
Standard
ISO/IEC 19566-10
First edition
Information technology — JPEG
2024-12
Systems —
AMENDMENT 1
Part 10:
Reference software
AMENDMENT 1: Additional reference
software implementations
PROOF/ÉPREUVE
Reference number
ISO/IEC 19566-10/Amd. 1:2025(en) © ISO/IEC 2025

ISO/IEC 19566-10/Amd. 1:2025(en)
© ISO/IEC 2025
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
PROOF/ÉPREUVE
© ISO/IEC 2025 – All rights reserved
ii
ISO/IEC 19566-10/Amd. 1:2025(en)
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 or www.iec.ch/members_experts/refdocs).
ISO and IEC draw attention to the possibility that the implementation of this document may involve the
use of (a) patent(s). ISO and IEC take no position concerning the evidence, validity or applicability of any
claimed patent rights in respect thereof. As of the date of publication of this document, ISO and IEC had not
received notice of (a) patent(s) which may be required to implement this document. However, implementers
are cautioned that this may not represent the latest information, which may be obtained from the patent
database available at www.iso.org/patents and https://patents.iec.ch. ISO and IEC shall not be held
responsible for identifying any or all such patent rights.
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.
In the IEC, see www.iec.ch/understanding-standards.
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 19566 series can be found on the ISO and IEC websites.
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 and
www.iec.ch/national-committees.
PROOF/ÉPREUVE
© ISO/IEC 2025 – All rights reserved
iii
ISO/IEC 19566-10/Amd. 1:2025(en)
Information technology — JPEG Systems —
Part 10:
Reference software
AMENDMENT 1: Additional reference software implementations

Subclause 4.4, Table 1
Add the following entries in the table:
Annex C dbench-jumbf-2.0 ISO/IEC 19566-5 Yes Yes C++
Annex E privsec-1.0 library ISO/IEC 19566-4 Yes Yes Java
Annex G jpeg360-1.0 library ISO/IEC 19566-6 Yes Yes Java
Annex I jlink-1.0 library ISO/IEC 19566-7 Yes Yes Java
Annex K jpeg-snack-1.0 library ISO/IEC 19566-8 Yes Yes Java
Annex L dbench-jpeg-snack-1.0 ISO/IEC 19566-8 Yes Yes C++
Subclause 4.4
Add the sentence at the end of the subclause:
The reference software implementations along with the respective reference datasets are available at
https:// standards .iso .org/ iso -iec/ 19566/ -10/ ed -1/ en/ amd/ 1.
Annex C
Add the following new annex after Annex B:
PROOF/ÉPREUVE
© ISO/IEC 2025 – All rights reserved
ISO/IEC 19566-10/Amd. 1:2025(en)
Annex A
(informative)
JUMBF reference software: C++ implementation
A.1 General
This annex describes a Reference Software implementation (identified as Implementation Dbench-JUMBF)
for ISO/IEC 19566-5 JPEG Systems – Part 5: JPEG universal metadata box format (JUMBF) [1].
This software is called “Dbench-JUMBF” written in C++ [7], and it is part of Doublebench’s JPEG Systems
Solution. The software has two parts: a core library and a command line interface (CLI) application. The
core library provides classes for different data structures to support handling of different boxes defined
in ISO/IEC DIS 19566-5:2022. The CLI provides the interface to use the functionalities of core library and
allow parsing and generating standalone JUMBF files through the command line arguments. In addition, it
implements the embedding and parsing of JUMBF structures inside JPEG images. The design of this software
aims to be extended to support JUMBF structures from other JPEG Systems standards.
This annex provides information on the software design approach followed for this reference software
for JPEG Universal Metadata Box Format (JUMBF), as defined in ISO/IEC DIS 19566-5:2022 Information
technologies - JPEG systems - Part 5: JPEG universal metadata box format (JUMBF). In addition, it provides
details on how to use the Dbench-JUMBF library and CLI application to successfully handle JUMBF data.
Subclause C.2 defines the hierarchical software design which translates the JUMBF model presented in
ISO/IEC 19566-5, into a set of C++ classes in a structured and future-proof manner. Next, Subclause C.3
presents the requirements and the third-party dependencies required to compile, build and use the Dbench-
JUMBF library. Finally, subclause C.4 demonstrates two example applications that use the library to provide
an interface that allows the users to interact with JUMBF data.
A.2 Software design
A.2.1 General
The Doublebench JPEG Systems Solution aims to provide the means to support the generation and
manipulation of JUMBF data. Doublebench JPEG Systems Solution imitates the structure of the JPEG Systems
standards in the sense that it is a multi-module project. The basis of this multi-module project is the Dbench-
JUMBF library which constitutes the main topic of this Annex. The jumbf library, as all defined modules of
the project, covers the respective JPEG Systems standards including the amendments and revised editions
that have been issued.
Like the JPEG Systems standards, jumbf is the main library that all other libraries rely on. The jumbf library
provides the means to generate and parse information that is stored in JUMBF format. The library is
implemented in C++ with an object-oriented approach, and it uses ISO C++14 Standard.
As specified in ISO/IEC 19566-5, it is possible to store JUMBF data as standalone files or inside a host image
by embedding the boxes in APP11 markers. Regarding the first case, the jumbf library provides the classes
to parse and generate JUMBF data directly from standalone files. Regarding the generation of standalone
JUMBF data, the file extension “.jumbf” is used, corresponding to the concatenation of ISO Base Media File
Format boxes. The current version of the library supports JPEG-1 files and standalone jumbf files.
The rest of the section describes the implementation of the classes that are defined in the scope of
ISO/IEC 19566-5 standard. The core concept in this data model is a DbBox class. All other type boxes are
derived from the DbBox class as shown in Figure C.1. The DbBox class has all the necessary fields like
“lbox”, “tbox”, “xl_box” and a pointer to “payload”. All the fields are kept private to ensure the integrity and
PROOF/ÉPREUVE
© ISO/IEC 2025 – All rights reserved
ISO/IEC 19566-10/Amd. 1:2025(en)
consistency of the field’s data. Similarly, the DbBox class has all the necessary public methods implemented
to set the values of fields and access those values. Implementation for any new box can be added by deriving
it from DbBox and adding respective new fields and methods and overriding the existing methods.
Figure C.1 — Dbench-JUMBF class hierarchy.
A.2.2 Classes for Content Boxes
The Dbench-JUMBF library has the implementations for all the content boxes defined in ISO/IEC-19566-5
also listed in Table C.1. These boxes are derived from DbBox and implementation for each box specific fields
and method are provided. Vertical lines shaded boxes in Figure C.1 shows content boxes. These boxes are
defined to be contained by different JUMBF boxes.
PROOF/ÉPREUVE
© ISO/IEC 2025 – All rights reserved
ISO/IEC 19566-10/Amd. 1:2025(en)
Table C.1 — Content Boxes
Class Name Box Type Superbox Comment
DbXmlBox ‘xml\040’ No This class allows to embed XML
(W3C, Extensible Markup Language)
(0x786D 6C20)
formatted information.
DbJsonBox ‘json’ No This allows to embed JSON (ISO/IEC
21778) formatted information.
(0x6A73 6F6E)
DbCodestreamBox ‘jp2c’ No This class allows to embed image
codestreams.
(0x6A70 3263)
DbUuidBox ‘uuid’ No This class provides a tool by which
vendors can add additional informa-
(0x7575 6964)
tion to a file without risking conflict
with other vendors.
DbBinaryDataBox ‘bidb’ No This class allows to embed any arbi-
trary binary data.
0x 6269 6462)
DbFileDescBox ‘bfdb’ No This class allows to embed the
description when adding arbitrary
binary data.
DbCborBox ‘cbor’ No This allows to embed CBOR (RFC
8949) formatted information.
(0x6362 6F72)
DbFreeBox ‘free’ No This class allows user to add padding
bytes.
(0x6672 6565).
DbJumbDescBox ‘jumd’ No This class allows to provides addi-
tional information about the behav-
(0x6A75 6D64)
iour and content of the JUMBF Box in
which it is contained.
A.2.3 Classes for JUMBF Boxes
The Dbench-JUMBF library has the implementations for all the JUMBF boxes as defined in ISO/IEC-19566-
5. These classes are “DbXmlJumbBox”, “DbJsonJumbBox”, “DbCodestreamJumbBox”, “DbCborJumbBox”,
“DbUuidJumbBox”, and “DbEmbdFileJumbBox” as shown in Figure C.1. The library also contains the
implementation for the class “DbJumbBox”, from which all other content type JUMBF box classes are derived.
Each class has fields to hold the data according to their respective specifications. Each class has fields and
methods derived from “DbBox” and “DbJumbBox”, while the methods of each content box are overridden
to support the functionality related to the box. Each class has the implementation of overridden method to
serialize the contents of the box to an array. Implementation for any new JUMBF box can be added by deriving
it from DbJumbBox and adding respective new fields and methods and overriding the existing methods.
A.3 Command line application.
Doublebench’s JUMBF CLI application “dbench_jumbf_app” is developed on the top of Doublebench’s JUMBF
library which enables users to generate JUMBF boxes and JUMBF bitstream. The application enables users
to create specific content type JUMBF as defined in ISO/IEC 19566-5 and embed the generated bitstream
in a JPEG 1 file. User can also parse JUMBF standalone files and JUMBFs present in JPEG file. Figure C.2 and
Figure C.3 shows a screen-capture of encoding and parsing. Table C.2 lists all the command line parameters
defined in the application along with the possible values and description.
Table C.2 — describes the different command lines for “dbench_jumbf_app”.
S. No Argument Possible Value Description
1 -encode Encode or Generate JUMBF (default)
2 -parse Parse a .jumbf or .jpg file
PROOF/ÉPREUVE
© ISO/IEC 2025 – All rights reserved
ISO/IEC 19566-10/Amd. 1:2025(en)
TTabablele C C.22 ((ccoonnttiinnueuedd))
S. No Argument Possible Value Description
3 -host_file INPUT FILENAME For encoding (-encode), Specify input JPEG 1 file name
that will host the JUMBF. It has .jpg or .jpeg file exten-
sion.
4 -i INPUT FILE NAME Specify input file name with .jpg or .jumbf extension for
parsing.
5 -o OUTPUT FILENAME Specify output file name. If -host_file is provided then
the output is .jpg or .jpeg else the output is .jumbf.
If this argument is not provided then the default file
name “db_output.jumbf” will be used.
6 -content_type XML, JSON, JP2C, UUID, Specify JUMBF content type. If not provided then it will
CBOR, EMBEDDED_FILE. be determined from content data file extension.
7 -lbox 0, 1 or NULL Specify Lbox field .
0 = box size will be file size i.e Box will continue till EOF.
1 = box size will be present in XLbox field
NULL = box size will be present in Lbox or XLbox field.
If this field is not provided then the “NULL” will be used
by default.
8 -requestable Set requestable field to true in JUMBF Description box.
9 -label LABEL STRING Specify Label for JUMB Description box.
10 -id Any Positive Integer less Specify ID for JUMB Description box.
than 2 - 1
11 -hash HASH Specify hash/signature for JUMB Description box. HASH
is string of 64 characters. each 2 characters represent a
HEX byte.
12 -hash_file HASH FILE NAME Specify file name for hash/signature to put in JUMB
Description box. HASH_FILE contains only string of 64
characters in binary. each 2 characters represent a HEX
byte
13 - private_data_file FILE NAME Specify file name for private box data to put in JUMB
Description box. FILE NAME contains binary bitstream
in accordance with Box definition
14 -xml_file XML FILE NAME Specify file name (.xml) for xml data to put in JUMBF
Content box.
If -xml_file is provided then “-content_type” become
optional as the software will assign “XML” to JUMBF
Content box type (-content_type).
15 -codestream_file FILE NAME Specify file name for codestream data to put in JUMBF
Content box.
If -codestream_file is provided then “-content_type”
become optional as the software will assign “CODE-
STREAM” to JUMBF Content box
...


ISO/IEC JTC 1/SC29/WG1 N101152
th
107 Meeting – Brussels, Belgium – 14-18 April 2025

INTERNATIONAL ORGANIZATION FOR STANDARDIZATION
ORGANISATION INTERNATIONALE DE NORMALISATION

ISO/IEC JTC 1/SC 29/WG1
(ITU-T SG16)
Coding of Still Pictures
JBIG          JPEG
Joint Bi-level Image           Joint Photographic

Experts Group                Experts Group

TITLE: AMDISO/IEC 19566-10 AMD1:2024/PRF Amd 1
SOURCE: WG1
PROJECT: ISO/IEC 19566-10 AMD1
STATUS:  Final
REQUESTED
ACTION: Distribution
DISTRIBUTION: WG1
Contact:
ISO/IEC JTC 1/SC 29/WG1 Convenor – Prof. Touradj Ebrahimi
EPFL/STI/IEL/GR-EB, Station 11, CH-1015 Lausanne, Switzerland
Tel: +41 21 693 2606, Fax: +41 21 693 7600, E-mail: convenor@jpeg.org

ISO/IEC JTC 1/SC29/WG1 M107055N101152
th
107 Meeting – Brussels, Belgium – 14-18 April 2025

ISO/IEC 19566-10:XXXX/DAM 1:2024(en)
ISO/IEC JTC 1/SC 29
Secretariat: JISC
JPEG (ISO/IEC JTC 1/SC 29/WG1)
Date:2024 2025-08-2411
Information technology — JPEG Systems —
Part 10:
Reference software
AMENDMENT 1: Additional reference software implementations
PROOF
ISO/IEC 19566-10:XXXX/DAM 1:2024/PRF Amd 1(en)
© ISO/IEC 2024 2025
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'sISO’s member body in the country of the requester.
ISO Copyright Office copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: + 41 22 749 01 11
Email: E-mail: copyright@iso.org
Website: www.iso.org
Published in Switzerland.
© ISO/IEC 2024 2025 – All rights reserved
iii
ISO/IEC 19566-10:2024/PRF Amd 1(en)
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 or www.iec.ch/members_experts/refdocs).
ISO and IEC draw attention to the possibility that the implementation of this document may involve the use of
(a) patent(s). ISO and IEC take no position concerning the evidence, validity or applicability of any claimed
patent rights in respect thereof. As of the date of publication of this document, ISO and IEC had not received
notice of (a) patent(s) which may be required to implement this document. However, implementers are
cautioned that this may not represent the latest information, which may be obtained from the patent database
available at www.iso.org/patents and https://patents.iec.ch. ISO and IEC shall not be held responsible for
identifying any or all such patent rights.
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.
In the IEC, see www.iec.ch/understanding-standards.
This document was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology,
Subcommittee SC 29, [name of subcommittee].Coding of audio, picture, multimedia and hypermedia
information.
A list of all parts in the ISO/IEC 19566 series can be found on the ISO and IEC websites.
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 and www.iec.ch/national-
committees.
© ISO/IEC 2023 2025 – All rights reserved
iv
ISO/IEC 19566-10:XXXX/DAMJTC 1:2024(en)/SC29/WG1
N101152
th
107 Meeting – Brussels, Belgium – 14-18 April 2025
Information technology — JPEG Systems — —
Part 10:
Reference software — Amendment
AMENDMENT 1: Additional reference software implementations

Subclause 4.4, Table 1
Add the following entries in the table:
Annex C dbench-jumbf-2.0 ISO/IEC 19566-5 Yes Yes C++
Annex E privsec-1.0 library ISO/IEC 19566-4 Yes Yes Java
Annex G jpeg360-1.0 library ISO/IEC 19566-6 Yes Yes Java
Annex I jlink-1.0 library ISO/IEC 19566-7 Yes Yes Java
Annex K jpeg-snack-1.0 library ISO/IEC 19566-8 Yes Yes Java
Annex L dbench-jpeg-snack- ISO/IEC 19566-8 Yes Yes C++
1.0
Subclause 4.4
Add the sentence at the end of the subclause:
The reference software implementations along with the respective reference datasets are available at
https://standards.iso.org/iso-iec/19566/-10/ed-1/en/amd/1.
Annex C
Add the following new annex after Annex B:
© ISO/IEC 2024 – All rights reserved

ISO/IEC 19566-10:2024/PRF Amd 1(en)
Annex A
(informative)
JUMBF reference software: C++ implementation
A.1 General
This annex describes a Reference Software implementation (identified as Implementation Dbench-JUMBF) for
ISO/IEC 19566-5 JPEG Systems – Part 5: JPEG universal metadata box format (JUMBF) [1].
This software is called “Dbench-JUMBF” written in C++ [7], and it is part of Doublebench’s JPEG Systems
Solution. The software has two parts: a core library and a command line interface (CLI) application. The core
library provides classes for different data structures to support handling of different boxes defined in ISO/IEC
DIS 19566-5:2022. The CLI provides the interface to use the functionalities of core library and allow parsing
and generating standalone JUMBF files through the command line arguments. In addition, it implements the
embedding and parsing of JUMBF structures inside JPEG images. The design of this software aims to be
extended to support JUMBF structures from other JPEG Systems standards.
This annex provides information on the software design approach followed for this reference software for
JPEG Universal Metadata Box Format (JUMBF), as defined in ISO/IEC DIS 19566-5:2022 Information
technologies - JPEG systems - Part 5: JPEG universal metadata box format (JUMBF). In addition, it provides
details on how to use the Dbench-JUMBF library and CLI application to successfully handle JUMBF data.
Subclause C.2 defines the hierarchical software design which translates the JUMBF model presented in
ISO/IEC 19566-5, into a set of C++ classes in a structured and future-proof manner. Next, Subclause C.3
presents the requirements and the third-party dependencies required to compile, build and use the Dbench-
JUMBF library. Finally, subclause C.4 demonstrates two example applications that use the library to provide
an interface that allows the users to interact with JUMBF data.
A.2 Software design
A.2.1 General
The Doublebench JPEG Systems Solution aims to provide the means to support the generation and
manipulation of JUMBF data. Doublebench JPEG Systems Solution imitates the structure of the JPEG Systems
standards in the sense that it is a multi-module project. The basis of this multi-module project is the Dbench-
JUMBF library which constitutes the main topic of this Annex. The jumbf library, as all defined modules of the
project, covers the respective JPEG Systems standards including the amendments and revised editions that
have been issued.
Like the JPEG Systems standards, jumbf is the main library that all other libraries rely on. The jumbf library
provides the means to generate and parse information that is stored in JUMBF format. The library is
implemented in C++ with an object-oriented approach, and it uses ISO C++14 Standard.
As specified in ISO/IEC 19566-5, it is possible to store JUMBF data as standalone files or inside a host image
by embedding the boxes in APP11 markers. Regarding the first case, the jumbf library provides the classes to
parse and generate JUMBF data directly from standalone files. Regarding the generation of standalone JUMBF
data, the file extension “.jumbf” is used, corresponding to the concatenation of ISO Base Media File Format
boxes. The current version of the library supports JPEG-1 files and standalone jumbf files.
The rest of the section describes the implementation of the classes that are defined in the scope of ISO/IEC
19566-5 standard. The core concept in this data model is a DbBox class. All other type boxes are derived from
© ISO/IEC 2023 2025 – All rights reserved
ISO/IEC 19566-10:XXXX/DAM 1:2024/PRF Amd 1(en)
the DbBox class as shown in Figure C.1. The DbBox class has all the necessary fields like “lbox”, “tbox”, “xl_box”
and a pointer to “payload”. All the fields are kept private to ensure the integrity and consistency of the field’s
data. Similarly, the DbBox class has all the necessary public methods implemented to set the values of fields
and access those values. Implementation for any new box can be added by deriving it from DbBox and adding
respective new fields and methods and overriding the existing methods.
© ISO/IEC 2024 2025 – All rights reserved
ISO/IEC 19566-10:2024/PRF Amd 1(en)

© ISO/IEC 2023 2025 – All rights reserved
ISO/IEC 19566-10:XXXX/DAM 1:2024/PRF Amd 1(en)

Figure C.1 — Dbench-JUMBF class hierarchy.
A.2.2 Classes for Content Boxes
The Dbench-JUMBF library has the implementations for all the content boxes defined in ISO/IEC-19566-5 also
listed in Table C.1. These boxes are derived from DbBox and implementation for each box specific fields and
method are provided. Vertical lines shaded boxes in Figure C.1 shows content boxes. These boxes are defined
to be contained by different JUMBF boxes.
Table C.1 — Content Boxes
Class Name Box Type Superbox Comment
DbXmlBox ‘xml\040’ No This class allows to embed XML
(W3C, Extensible Markup
(0x786D 6C20)
Language) formatted information.
DbJsonBox ‘json’ No This allows to embed JSON (ISO/IEC
21778) formatted information.
(0x6A73 6F6E)
DbCodestreamBox ‘jp2c’ No This class allows to embed image
codestreams.
(0x6A70 3263)
© ISO/IEC 2024 2025 – All rights reserved
ISO/IEC 19566-10:2024/PRF Amd 1(en)
Class Name Box Type Superbox Comment
DbUuidBox ‘uuid’ No This class provides a tool by which
vendors can add additional
(0x7575 6964)
information to a file without risking
conflict with other vendors.
DbBinaryDataBox ‘bidb’ No This class allows to embed any
arbitrary binary data.
0x 6269 6462)
DbFileDescBox ‘bfdb’ No This class allows to embed the
description when adding arbitrary
binary data.
DbCborBox ‘cbor’ No This allows to embed CBOR (RFC
8949) formatted information.
(0x6362 6F72)
DbFreeBox ‘free’ No This class allows user to add
padding bytes.
(0x6672 6565).
DbJumbDescBox ‘jumd’ No This class allows to provides
additional information about the
(0x6A75 6D64)
behaviour and content of the JUMBF
Box in which it is contained.
A.2.3 Classes for JUMBF Boxes
The Dbench-JUMBF library has the implementations for all the JUMBF boxes as defined in ISO/IEC-19566-5.
These classes are “DbXmlJumbBox”, “DbJsonJumbBox”, “DbCodestreamJumbBox”, “DbCborJumbBox”,
“DbUuidJumbBox”, and “DbEmbdFileJumbBox” as shown in Figure C.1. The library also contains the
implementation for the class “DbJumbBox”, from which all other content type JUMBF box classes are derived.
Each class has fields to hold the data according to their respective specifications. Each class has fields and
methods derived from “DbBox” and “DbJumbBox”, while the methods of each content box are overridden to
support the functionality related to the box. Each class has the implementation of overridden method to
serialize the contents of the box to an array. Implementation for any new JUMBF box can be added by deriving
it from DbJumbBox and adding respective new fields and methods and overriding the existing methods.
A.3 Command line application.
Doublebench’s JUMBF CLI application “dbench_jumbf_app” is developed on the top of Doublebench’s JUMBF
library which enables users to generate JUMBF boxes and JUMBF bitstream. The application enables users to
create specific content type JUMBF as defined in ISO/IEC 19566-5 and embed the generated bitstream in a
JPEG 1 file. User can also parse JUMBF standalone files and JUMBFs present in JPEG file. Figure C.2 and
Figure C.3 shows a screen-capture of encoding and parsing. Table C.2 lists all the command line parameters
defined in the application along with the possible values and description.
Table C.2 — describes the different command lines for “dbench_jumbf_app”.
S. Argument Possible Value Description
No
1 -encode  Encode or Generate JUMBF (default)
2 -parse  Parse a .jumbf or .jpg file
3 -host_file INPUT FILENAME For encoding (-encode), Specify input JPEG 1 file name
that will host the JUMBF. It has .jpg or .jpeg file
extension.
© ISO/IEC 2023 2025 – All rights reserved
ISO/IEC 19566-10:XXXX/DAM 1:2024/PRF Amd 1(en)
S. Argument Possible Value Description
No
4 -i INPUT FILE NAME Specify input file name with .jpg or .jumbf extension for
parsing.
5 -o OUTPUT FILENAME Specify output file name. If -host_file is provided then
the output is .jpg or .jpeg else the output is .jumbf.
If this argument is not provided then the default file
name “db_output.jumbf” will be used.
6 -content_type XML, JSON, JP2C, UUID, Specify JUMBF content type. If not provided then it will
CBOR, EMBEDDED_FILE. be determined from content data f
...

Questions, Comments and Discussion

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