Since the #PNG spec is getting some updates, I was thinking... you know what would be sick? Baking classic #lossy compression right into PNG.

I don't mean #JPEG or anything like that. Not even the #LossyPNG scheme I enjoy using where I reduce the number of colors to reduce the entropy. That wouldn't need any changes to the spec.

I'm thinking #Amiga HAM modes! Instant 3:1 (well, 2.4:1) lossy compression with (hopefully) minimal artifacting. That would be SICK!

Makes me want to throw together a Python script or something to read PNG files, apply the HAM "compression," and then see how the output looks. It wouldn't provide much compression savings with regular PNG, it would need a change to the format. But since I never had an Amiga, I'm curious to see how it looks, and how well it might scale to modern image resolutions.

Conceptually, it's not much different than 3:1 horizontal chroma subsampling, but might actually look a lot better.

Quick explainer: instead of having a 24-bit-per-pixel image, you have a 10-bit-per-pixel image, where the first two bits are a mode selector, and the last 8 bits are the actual pixel data. The modes are Hold and Modify{R,G,B}. Modify{R,G,B} modify just the red, green, or blue component of the 24-bit color for that pixel with the 8 bits specified. The modify mode assigns that pixel to be equivalent to the 8-bit value from a pre-defined palette or some pre-defined bit-assignment mode like RRRGGGBB or something. So basically, the horizontal color resolution is divided by 3, but sometimes you get lucky and there's no noticeable loss.

#HoldAndModify #Imaging

A long time ago (11 years ago), I wrote an JavaScript library to display IFF/ILBM files in a browser, surprisingly, it still works…

#amiga #iff #ilbm #retrocomputing #imageprocessing #holdandmodify

https://wiesmann.codiferes.net/wordpress/archives/17419

ILBM Animations

I have been hacking around on my small javascript library to load ILBM/IFF files, once I had fixed HAM decoding the next logical step was to add support for animations. This was for me a good oppor…

Thias の blog
@NanoRaptor Ah Deluxe Paint on an Amiga if my eyes and memory don’t deceive. I tried what you did in Sep. 1989. A hurricane kinda splashed cold water on that. #holdAndModify

HAMazing by Desire.

An Amiga OCS demo from 2023!

https://www.pouet.net/prod.php?which=94348

Or, for you poor souls who don't have an Amiga nor know how to get an emulator (e.g. UAE) running, someone posted a recording on this site too:

https://youtu.be/4RmYmE3KlEo

#Desire #HAMazing #Amiga #DemoScene #OCS #OriginalChipSet #HoldAndModify #Pouet

HAMazing by Desire

demo for Amiga OCS/ECS, 1st at 68k Inside 2023

pouët.net