AVIF (8/10/12-bit) image support for darktable

I’ve nearly finished implementing my first feature for darktable. Support for importing and exporting AVIF images. AVIF is an image format based on the AV1 video codec and has support for HDR images too.

Joe Drago, the author of libavif was very helpful and fixed all the bugs I discovered. Also he provided a lot of explanations. Thank you very much!

The feature is not fully finished yet, as I need to understand a few more details and if I should expose them to the UI or not.

As it is a new feature it will be available with darktable 3.0.1.

There are some things which needs to be address to have a nice experience for everyone:

libavif multi threaded encoding using rav1e
exif support for AVIF images in libexiv2
Still image support in rav1e
Lossless image support in rav1e
AVIF support in Firefox


Nice work !


Is this libavif an extended version of the libheif or a separate project?
Do you know if there are already smartphones or cameras that saves avif files directly?
If yes, do you have examples?

libavif is a separate project. It uses either aom and/or dav1d and rav1e.

I’m not aware that any camera or phone manufacturer is using it already.

1 Like

Thanks for the fast answer.