p0nce
p0nce
Color API out there: **raylib**: (only sRGB) ``` Color Fade(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f int ColorToInt(Color color); // Get...
In future world, PixelType will probably explode in complexity with opEquals being non-trivial. What would be those additions? I can think of color spaces, specific encoding, chroma sitting, etc. Some...
The reading of the color library made by Manu is interesting and points towards the likely shape of a future "Colorspace" concept, which would either the same as PixelType or...
Very much related to #20
Important to note that some practical overlay images are largely transparent and can benefit a lot from premultiplied encoding, but not really from "ignore color for fully transparent areas" which...
Premultiplied alpha doesn't seem to strictly need ICC profile or full colorspace struct. We can still chug along, ignoring colorspace.
Numbers for 3 real world overlays with low opacity, 8-bit sRGB | Input | PNG | PNG-premul | Reduction | QOIX | QOIX-premul | Reduction | | ----------- | -----------...
This is breaking change, since decoders are now free to give premultiplied output. - [x] Implement the premul PixelTypes - [x] `convert` tool can take `-premul` as flag to encode...
**Encoding rgba8 vs rgbap8 images.** QOIX is modified to just signal premultiplication, with a QOIX_SRGB_PREMUL = 2 constant. Without QOIX premul: ``` *** image of size 553.0 kb: test-images\graillon-overlay.png orig...
QOIX lap8 vs la8 **lap8** ``` *** image of size 12.0 kb: test-images\auburn-sounds-grey.png (lap8) orig dec decode decode mpps encode mpps bit-per-pixel size reduction 1.05 ms 0.15 ms 1288.41 266.39...