Link

Java HEIC Writer

JDeli includes a HEIC Writer to write HEIC files in Java. The HEIC Encoder is written in 100% Java with no dependencies.

Key information:

  • 100% Java solution. No dlls or dependencies on native code easy to use

Quick start or to replace in existing code using ImageIO:

JDeli.write(myBufferedImage, "heic", outputStreamOrFile);

or

byte[] outputData = JDeli.write(myBufferedImage, "heic");

New method for quick and simple usage

JDeli.write(myBufferedImage, OutputFormat.HEIC, outputStreamOrFile)

OutputFormat allows setting of any supported Image Format

For complete control of output:

final HeicEncoderOptions options = new HeicEncoderOptions();


//write out
JDeli.write(myBufferedImage, options, outputStreamOrFile);

HeicEncoderOptions allows setting of specific options.

Various image processing operations can be conducted on the image, detailed documentation can be found here.

Performance comparisons:

These figures were generated using jmh (as documented on our blog) with a standard set of images (also documented). They should be easy to replicate if you wish to validate, the code is on GitHub.

The higher the number, the better.

Benchmark Mode Cnt Score Error Units
HEIC.JDeli thrpt 25 2.993 ± 0.005 ops/s

Tested on 2020 13inch M1 MacBook Pro using JDK 18.0.1.1