AV1 Image File Format (AVIF)

Living Standard,

This version:
https://AOMediaCodec.github.io/av1-avif
Issue Tracking:
GitHub
Editor:
(Netflix)
Former Editor:
(Netflix)
Warning

This specification is still at draft stage and should not be referenced other than as a working draft.

Copyright 2018, The Alliance for Open Media

Licensing information is available at http://aomedia.org/license/

The MATERIALS ARE PROVIDED “AS IS.” The Alliance for Open Media, its members, and its contributors expressly disclaim any warranties (express, implied, or otherwise), including implied warranties of merchantability, non-infringement, fitness for a particular purpose, or title, related to the materials. The entire risk as to implementing or otherwise using the materials is assumed by the implementer and user. IN NO EVENT WILL THE ALLIANCE FOR OPEN MEDIA, ITS MEMBERS, OR CONTRIBUTORS BE LIABLE TO ANY OTHER PARTY FOR LOST PROFITS OR ANY FORM OF INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER FROM ANY CAUSES OF ACTION OF ANY KIND WITH RESPECT TO THIS DELIVERABLE OR ITS GOVERNING AGREEMENT, WHETHER BASED ON BREACH OF CONTRACT, TORT (INCLUDING NEGLIGENCE), OR OTHERWISE, AND WHETHER OR NOT THE OTHER MEMBER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Abstract

This document specifies syntax and semantics for the storage of [AV1] images in the generic image format [HEIF], which is based on [ISOBMFF]. While [HEIF] defines general requirements, this document also specifies additional constraints to ensure higher interoperability between writers and readers when [HEIF] is used with [AV1] images. These constraints are defined in the form of a [MIAF] profile.

1. Scope

[AV1] defines the syntax and semantics of an AV1 bitstream. The AV1 Image File Format defined in this document supports the storage of a subset of the syntax and semantics of an AV1 bitstream. Specifically, only bitstreams with the still_picture flag set to 1 are supported. For some other configurations of AV1 bitstreams, the [AV1-ISOBMFF] specification SHOULD be used.

Is the restriction to have still_picture = 1 necessary?

AV1 Image File Format supports High Dynamic Range (HDR) and Wide Color Gamut (WCG) images as well as Standard Dynamic Range (SDR). It supports monochrome images as well as multi-channel images with all the bit depths and color spaces specified in [AV1].

An AVIF file is designed to be a conformant [HEIF] file for both image items and image sequences. Specifically, this specification follows the recommendations given in "Annex I: Guidelines On Defining New Image Formats and Brands" of [HEIF].

This specification reuses syntax and semantics used in [AV1-ISOBMFF].

The MIAF AV1 profile defined in this specification follows the convention of the [MIAF] specification.

Should this specification also define a structural brand stricter than miaf to profile out some features?

2. Image Items and properties

2.1. AV1 Image Item

When an item is of type av01, it is called an AV1 Image Item, and SHALL obey the following constraints:

2.2. Image Item Properties

2.2.1. AV1 Item Configuration Property

Box Type:                 av1C
Property type:            Descriptive item property
Container:                ItemPropertyContainerBox
Mandatory (per  item):    Yes, for an image item of type 'av01'
Quantity:                 One for an image item of type 'av01'

The syntax and semantics of the AV1 Item Configuration Property are identical to those of the AV1CodecConfigurationBox defined in [AV1-ISOBMFF], with the following constraints:

This property SHALL be marked as essential.

2.2.2. Other Item Properties

In addition to the Image Properties defined in [HEIF], such as colr, pixi or pasp, AV1 image items MAY also be associated with clli and mdcv introduced in [MIAF].

In general, it is recommended to use properties instead of Metadata OBUs in the AV1 Item Configuration Property.

3. Image Sequences

An AV1 Image Sequence is defined as a set of AV1 Temporal Units stored in an AV1 track as defined in [AV1-ISOBMFF] with the following constraints:

4. Alpha Image Items and Sequences

An AV1 Alpha Image Item (respectively an AV1 Alpha Image Sequence) is an AV1 Image Item (respectively AV1 Image Sequence) with the following additional constraints:

In [ISOBMFF] or [HEIF] files, if an AV1 Alpha Image Item (respectively. an AV1 Alpha Image Sequence) is used, the aux_type field of the AuxiliaryTypeProperty (respectively AuxiliaryTypeInfoBox) SHALL be set to urn:mpeg:mpegB:cicp:systems:auxiliary:alpha, as defined in [MIAF].

5. MIAF AV1 Baseline Profile

This section defines the MIAF AV1 Baseline profile of [HEIF], specifically for [AV1] bitstreams, based on the constraints specified in [MIAF] and identified by the brand MiA1.

If the brand MiA1 is in the list of compatible_brands of a TrackTypeBox or FileTypeBox, the following constraints SHALL be respected:

Conformance

Conformance requirements are expressed with a combination of descriptive assertions and RFC 2119 terminology. The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in the normative parts of this document are to be interpreted as described in RFC 2119. However, for readability, these words do not appear in all uppercase letters in this specification.

All of the text of this specification is normative except sections explicitly marked as non-normative, examples, and notes. [RFC2119]

Examples in this specification are introduced with the words “for example” or are set apart from the normative text with class="example", like this:

This is an example of an informative example.

Informative notes begin with the word “Note” and are set apart from the normative text with class="note", like this:

Note, this is an informative note.

Index

Terms defined by this specification

Terms defined by reference

References

Normative References

[AV1]
AV1 Bitstream & Decoding Process Specification. LS. URL: http://av1-spec.argondesign.com/av1-spec/av1-spec.html
[AV1-ISOBMFF]
AV1 Codec ISO Media File Format Binding. LS. URL: https://aomediacodec.github.io/av1-isobmff/
[HEIF]
Information technology — High efficiency coding and media delivery in heterogeneous environments — Part 12: Image File Format. International Standard. URL: https://www.iso.org/standard/66067.html
[ISOBMFF]
Information technology — Coding of audio-visual objects — Part 12: ISO Base Media File Format. December 2015. International Standard. URL: http://standards.iso.org/ittf/PubliclyAvailableStandards/c068960_ISO_IEC_14496-12_2015.zip
[MIAF]
Information technology -- Multimedia application format (MPEG-A) -- Part 22: Multi-Image Application Format (MiAF). Enquiry. URL: https://www.iso.org/standard/74417.html
[RFC2119]
S. Bradner. Key words for use in RFCs to Indicate Requirement Levels. March 1997. Best Current Practice. URL: https://tools.ietf.org/html/rfc2119