AVIF Decoder Unsupported Auxiliary Item Types
When an AVIF decoder encounters an auxiliary item type that it does not recognize or support, it must safely ignore the auxiliary data and continue decoding the primary image. Because the AVIF specification builds upon the ISO Base Media File Format (ISOBMFF) and HEIF architectures, auxiliary items are designed as non-essential, supplementary tracks or image items. Consequently, a failure to parse an unsupported auxiliary type does not trigger a fatal decode error; instead, the system falls back to displaying the base image alone, ensuring consistent backward compatibility and graceful degradation across diverse viewing environments.
The Role of Auxiliary Items in AVIF
In an AVIF file, an auxiliary item is linked to a primary image item
using an auxl (auxiliary) reference type. The exact nature
of this auxiliary data is declared via an auxiliary type property (such
as auxC), which contains a Uniform Resource Identifier
(URI) or Uniform Resource Name (URN) identifying its purpose.
Common examples of auxiliary item types include:
- Alpha Channels: Transparency masks (typically
identified by the URN
urn:mpeg:mpegB:cicp:systems:auxiliary:alpha). - Depth Maps: Spatial depth information used for computational photography or 3D effects.
- Gain Maps: Luminance enhancement layers used to render High Dynamic Range (HDR) content on compatible displays while retaining a Standard Dynamic Range (SDR) base layer.
Specification Requirements: Mandatory Ignoring of Unknown Types
According to the HEIF (ISO/IEC 23008-12) standard, from which AVIF
inherits its structural logic, decoders must not fail when encountering
unrecognized item properties or auxiliary item types. If a decoder reads
an auxC property containing an unknown URN, the decoder is
explicitly required to disregard that auxiliary item.
The primary image item remains structurally independent. Its
dimensions, color data, and compression parameters are self-contained
within its own item properties (such as ispe,
colr, and av1C). Because the auxiliary item
references the primary item rather than the other way around, discarding
the auxiliary stream leaves the primary image intact and completely
decodable.
Real-World Decoding Behavior
When an auxiliary item is discarded due to a lack of decoder support, the visible outcome depends entirely on what information the auxiliary item contained:
- Transparency Loss: If a decoder does not support the alpha channel auxiliary type, the primary image will be displayed without transparency, effectively treating the background as fully opaque.
- HDR Fallback: If an auxiliary gain map is unsupported, the decoder simply outputs the base SDR image, ignoring the dynamic range expansion data.
- Feature Omission: Depth maps or application-specific auxiliary layers are silently dropped, preventing secondary features (like portrait-mode blur or stereoscopic rendering) from functioning while still presenting the main visual.
Conforming AVIF decoders isolate primary image streams from auxiliary processing pipelines, guaranteeing that unsupported supplementary data never leads to file corruption errors, blank outputs, or decode crashes.