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
iinfwith item typeExif, addressed byiloc. - mime item — XMP packets (item type
mimewith content-type matchingapplication/rdf+xmlorxml). - HDR metadata —
mdcv(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.
- Validate the ftyp brand against the HEIF brand set (which includes
avifandavis). - Parse
meta→iinf→ identify Exif + XMP item ids. - Parse
meta→iloc→ find their byte ranges. - Rewrite
iinfto drop the metadata entries andilocto drop their location records, recompute box sizes, shift downstreammdatoffsets accordingly. - The AV1 image-data slices in
mdatare 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