Mark Stephens Mark has been working with Java and PDF since 1999 and is a big NetBeans fan. He enjoys speaking at conferences. He has an MA in Medieval History and a passion for reading.

What is the AVIF image format?

51 sec read

AVIF file

AVIF file

What is AVIF?

AVIF stands for AV1 Image File Format  and is used for storing images and video. It uses the same container format as HEIC images but with potentially better compression. It offers lossy and lossless compression. It offers an alternative to HEIC and JPEG image file formats but is not as well supported in web browsers.

It is an open standard with no patents.

The file name extension for AVIF files is: .avif

Here are some other questions about AVIF you might also want to ask. If you have any other questions, please add a comment and we will try to answer.

What is the difference between AVIF and HEIC?

HEIC and AVIF both use the Heif container format but AVIF uses the AV1 compression format.

Is AVIF better than JPEG?

AVIF may produce better compression than JPEG but JPEG is better supported by web browsers and general software. It is possible to convert AVIF to JPG using third-party software.

Is it possible to convert AVIF to PNG?

Yes. The reason many people do this is because PNG is a much better supported Image file format. To convert AVIF to PNG you will need to use a third-party software library.

How to open AVIF files in Java?

ImageIO (the built-in Java Image library) does not support AVIF images.

We are currently working an AVIF Decoder for our JDeli library to read, writw and display AVIF files.



Are you a Java Developer working with Image files?

// Read an image
BufferedImage bufferedImage = JDeli.read(dicomImageFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(heicImageFile);

// Write an image
JDeli.write(bufferedImage, "heic", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(jpegImageFile);

// Write an image
JDeli.write(bufferedImage, "jpeg", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(jpeg2000ImageFile);

// Write an image
JDeli.write(bufferedImage, "jpx", outputStreamOrFile);
// Write an image
JDeli.write(bufferedImage, "pdf", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(pngImageFile);

// Write an image
JDeli.write(bufferedImage, "png", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(tiffImageFile);

// Write an image
JDeli.write(bufferedImage, "tiff", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(webpImageFile);

// Write an image
JDeli.write(bufferedImage, "webp", outputStreamOrFile);
Mark Stephens Mark has been working with Java and PDF since 1999 and is a big NetBeans fan. He enjoys speaking at conferences. He has an MA in Medieval History and a passion for reading.

What is JBIG2?

JBIG2 is a lossless and lossy compression standard for bi-level images like scanned documents, offering high compression ratios by identifying and encoding similar shapes...
chika
47 sec read