C2PA Metadata Location in AVIF ISOBMFF Containers
This article explains the physical location and structural mapping of
Coalition for Content Provenance and Authenticity (C2PA) metadata within
an AVIF file. AVIF is built on the ISO Base Media File Format (ISOBMFF),
which organizes data into hierarchical structures called boxes or atoms.
In an AVIF container, C2PA manifest stores are stored as dedicated
metadata items defined inside the meta box, physically
located within the file's payload data (typically the mdat
box), and linked to the primary image item using explicit item
references.
The ISOBMFF Architecture for C2PA
AVIF does not store arbitrary metadata in loose header fields.
Instead, it relies on the standardized ISOBMFF item framework under the
top-level meta box. The C2PA specification prescribes that
provenance manifests must be packaged as a JUMBF (JPEG Universal
Metadata Box Format) container and registered as an independent item in
the ISOBMFF structural hierarchy.
1. Item Declaration
(iinf and infe)
To declare the presence of C2PA metadata, the container uses the Item
Information Box (iinf), located inside the root
meta box:
- Inside
iinf, there is an Item Information Entry (infe) box assigned specifically to the C2PA manifest. - The
item_typefield in thisinfeentry is set to the FourCC (four-character code)'c2pa'. - The entry assigns a unique
item_IDto represent this specific provenance manifest item throughout the container.
2. Physical Data Storage
(iloc and mdat)
The binary content of the C2PA manifest—which consists of signed assertions, claims, and the manifest store—is physically stored in the media data space:
- Physical Payload: The actual raw bytes of the C2PA
manifest are written directly inside the
mdat(Media Data) box alongside the compressed AV1 image data. - Byte Offset Mapping: The Item Location Box
(
iloc), located within themetabox, maps the C2PAitem_IDto its exact physical location. Theilocspecifies the base offset, extent offset, and byte length within the file where the reader can extract the raw C2PA payload.
3. Associating
Metadata with the Image (iref)
For a reader to know which visual asset the C2PA metadata applies to,
an explicit association is created inside the Item Reference Box
(iref):
- An item reference entry is added with the reference type set to
'cdsc'(content describes). - The
from_item_IDpoints to the C2PA metadata item. - The
to_item_IDpoints to the primary visual item (the AV1 image item ID designated by thepitmbox).
Alternative Placement: The
uuid Box
While the item-based method using meta,
infe, and iloc is the required standard for
still image AVIF containers, ISOBMFF video tracks or non-item
configurations may alternative encapsulate C2PA manifests inside a
top-level uuid box. For AVIF still images, however,
conforming implementations look exclusively inside the meta
box item collection for an item of type 'c2pa'.