richgel999 / fpng

Super fast C++ .PNG writer/reader

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FPNG-JAVA: Java Wrapper available

manticore-projects opened this issue · comments

Thank you for providing this great encoder.
I have wrapped it into a Java Library and also ran benchmark against other fast Java PNG Encoders. Your implementation is doing great (despite the JNA overhead and the expensive RGBA byte array composition).

https://github.com/manticore-projects/fpng-java

Greetings! We have just released FPNG-JAVA stable version 1.1.0 with binaries for Windows, Linux and MacOS.

I had to add some Macros for getting the Windows DLL work.

Please try it and let us know about your benchmarks.
Thank you a lot and cheers!

Question please:

For "small" size PNGs, the FPNG encoded size is very competitive, especially when considering the huge performance gain.
Of course, with the other encoders even smaller encodings are possible, but that would come with much worse performance.

However, for large size PNGs, there seem to be a material penalty in encoded size. Almost 70% larger than ImageIO.
Is that expected an explainable by design? If so, what is the expected "sweet spot" where compression rates fall off? What is the reason that compression gets worse for the large image?

image