https://bugs.kde.org/show_bug.cgi?id=500877

            Bug ID: 500877
           Summary: Inefficient storage of layer bitmaps
    Classification: Applications
           Product: krita
           Version: 5.2.9
          Platform: Microsoft Windows
                OS: Microsoft Windows
            Status: REPORTED
          Severity: wishlist
          Priority: NOR
         Component: File formats
          Assignee: krita-bugs-n...@kde.org
          Reporter: jonathanb...@gmail.com
  Target Milestone: ---

While exploring the KRA file structure, I noticed each layer has the image
stored using LFZ compression.
Upon further research, I discovered LFZ has been untouched in over 15 years,
and performs worse than even raw pixel data when inside the ZIP format.
JPEG XL is also shown for comparison, as the only format which can handle all
data types Krita supports (8bit int to 32bit float), encoded at effort 2 for
decode speeds twice as fast as PNG.

8bit 1920 x 1080:
LZF     5.5 MB
PPM     4.6 MB
JXL     2.5 MB

8bit 3000 x 4000:
LZF    30.7 MB
PPM    24.2 MB
JXL     9.8 MB

16bit 2048 x 2048:
LZF    13.3 MB
PPM    14.5 MB
JXL     9.3 MB

16bit Float 2048 x 2048:
LZF    11.5 MB
PFM    18.7 MB
JXL     8.3 MB

32bit Float 2048 x 1024:
LZF     5.6 MB
PFM     6.2 MB
JXL     4.7 MB

Outright changing the format would be a long term goal and no doubt break
backwards compatibility, however I think it's about time Krita caught up with
the 21st century, or at least used a compression method recognised by others
too. (This is the only program to use LFZ as far as I'm aware)

In a world of ever growing resolution and bitdepth, this seems like an
inevitable step to keep file sizes manageable.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to