Skip to main content
Tracemute Clean a file

← All formats

AVIF

AV1-encoded stills in a HEIF container. Same metadata model as HEIC, royalty-free codec.

Extensions
.avif
MIME
image/avif
Strip
Lossless
Updated
2026-05-27

AVIF is the open answer to HEIC. The container is identical — both use ISO Base Media File Format (ISOBMFF) with the HEIF item-and-box layout — but the compressed image data is AV1 instead of patent-encumbered HEVC. Chrome, Firefox, Safari, and modern Android all decode AVIF natively. Camera apps are starting to write it; CDNs serve it where browsers support it.

If a website is serving photos as .avif, you have a file with potentially identical metadata to the HEIC your phone would have written — same EXIF item, same XMP item, same Apple-style maker dictionaries.

What it carries

AVIF carries the same metadata as HEIC because the container is the same:

  • Exif item — TIFF-encoded EXIF, declared in iinf with item type Exif, addressed by iloc.
  • mime item — XMP packets (item type mime with content-type matching application/rdf+xml or xml).
  • HDR metadatamdcv (mastering display colour volume), clli (content light level info). Required for HDR rendering.
  • Apple AssetIdentifier if an Apple device wrote the file via the EXIF MakerNote tag 17 path — though Apple is HEIC-first in practice today.

What’s unique

AVIF unlocks lossless animation (AVIS, brand avis) using the same item-sequence machinery. That same machinery means a future AVIS file shipped from a camera can carry frame-by-frame metadata items — keep an eye on this. The current strip handles it the same way: walk iinf, drop metadata items, leave image items alone.

Browsers that decode AVIF natively still rely on the container’s ispe (image spatial extents), pixi (pixel information), and HDR boxes to render correctly. The strip keeps every structural box; only metadata items get removed.

What Tracemute does

The same handler that processes HEIC: native ISOBMFF box surgery. Brand detection (avif, avis) routes the output MIME to image/avif so the cleaned blob still identifies as AVIF in the browser, in file(1), and in HTML <img> type= matching.

  1. Validate the ftyp brand against the HEIF brand set (which includes avif and avis).
  2. Parse metaiinf → identify Exif + XMP item ids.
  3. Parse metailoc → find their byte ranges.
  4. Rewrite iinf to drop the metadata entries and iloc to drop their location records, recompute box sizes, shift downstream mdat offsets accordingly.
  5. The AV1 image-data slices in mdat are byte-identical.

What survives

The AV1 bitstream, ICC profile, HDR descriptors (mdcv / clli), image-grid layout boxes (ispe, pixi, grid for tiled images). Everything required to decode the picture correctly stays untouched.

Where this format shows up

Real situations that hand you a AVIF file.