Top
Best
New

Posted by bluedel 6/24/2025

A new PNG spec(www.programmax.net)
672 points | 602 commentspage 4
nashashmi 6/26/2025|
Time is ripe for audio-included animated PNG files.
naikrovek 6/25/2025||
Doesn’t PNG already support 16 bits per color channel and an arbitrary number of color channels?
ProgramMax 6/25/2025|
16-bit, yes. Arbitrary channel count, no. However, HDR is more than just bitcount.
kumarvvr 6/25/2025||
Never heard about Animated PNGs, and I am a nerd to the core.

Pleasantly surprised.

spauldo 6/27/2025|
Animation was an early feature, actually. It was called "MNG" and was developed alongside PNG. I don't know the details of why but it never really saw adoption outside of Firefox and was eventually removed even from there. APNG is different from MNG and came much later.
ccarnino 6/25/2025||
I can't believe the standard is 20yo.
sylware 6/25/2025||
Until everything new is "optional". Hopefully PNG won't be the target of "enshitification". We all know that for file formats, there is a very strong pressure from developers and vendors for that to happen since it favors, hard, vendor and developer lock-in. If not careful, even with a team of PHD devs won't be able to write alternatives encoders/decoders that "reasonbly" and the world will end-up with very few alternatives implementations, if not only one.

I did skim through the specs, it seems most of it is related to cleanup and optional blocks, so it seems PNG is still safe, am I wrong? (asking those who did dive into the new specs deeply).

ProgramMax 6/25/2025|
Everything new is optional. This is not a breaking change. Old PNGs and software continue to work just fine. And these new changes are backwards-compatible as much as they can be. So old software can display a new PNG and be mostly correct. By that I mean, the user will still say "it is a picture of a red apple". But if the software isn't HDR, they might not get the bright highlights and inky blacks of the HDR PNG.
sylware 6/26/2025||
What is the remaining pertinent value of HDR since we are moving towards xrgb16161616 pixel format?
defraudbah 6/25/2025||
this is good news, any packages who support new png standard or planning to? rust/go/python/js?
NotAnOtter 6/25/2025||
Can someone TLDR why I should care as someone who doesn't directly get into the weeds of this type of things?

Is this written exactly for (1) people who implement/maintain this and, I say this with love, (2) nerds. Or will there be effects outside of a microscopic improvement on storage + latency.

spauldo 6/27/2025|
If you don't do much with images it's probably not anything you need to worry about. If you care about things like HDR, it means you can now use PNGs for that. If you work with graphics for a living, it's probably a good idea to learn what's changed in the standard.

PNG was a huge deal when it was new, mostly because of all the headaches Unisys was giving everyone over GIF compression patents. This new standard is mostly of interest to people that have reason to care about what format their image data is in.

leviathan1 6/25/2025||
Not backwards compatible I think
ProgramMax 6/25/2025|
It is very backwards compatible. :) We worked hard to make sure it would be.
aizk 6/25/2025||
20 years?? What took so long.
Joel_Mckay 6/25/2025|
DaVinci Resolve also supports OpenEXR format with the added magic of LUT.

PNG is popular with some Commercial Application developers, but the exposure and color problems still look 1980's awful in some use-cases.

Even after spending a few grand on seats for a project, one still gets arrogant 3D clown-ware vendors telling people how they should run their pipeline with PNG hot garbage as input.

People should choose EXR more often, and pick a consistent color standard. PNG does not need yet another awful encoding option. =3

morjom 6/25/2025||
What are some "consistent color standards" you'd recommend? Honest question.
Joel_Mckay 6/25/2025||
Like all complex questions, the answer is it depends on the target project and or Display.

A very basic rec.709 workflow tutorial:

https://www.youtube.com/watch?v=lf8COHAgHJs

The Andreas Dürr LUT pack:

https://www.youtube.com/watch?v=dDKK54CeXgM

https://cinematiccookie.gumroad.com/l/bseftb?layout=profile

The calibration workflows also depend heavily on what is being rendered, source application(s), and the desired content look. There were some common free packs on github for popular programs at one time. Should still be around someplace... good luck. =3

DidYaWipe 6/25/2025||
"PNG is popular with some Commercial Application developers, but the exposure and color problems still look 1980's awful in some use-cases."

What are you talking about? It's a bitmap. It has nothing to do with "exposure and color problems."

Joel_Mckay 6/25/2025||
In general, with some applications people hit the limits pretty quickly with PNG and JPG. In our use-case, the EXR format essentially meant a rendered part of the source image wouldn't be "overexposed" by the render pipeline, and layers could be later adjusted to better match in Resolve. Example: your scenes fireball simulation won't look like a fried egg photo from 1980 due to hitting 0xFF.

If you've never encountered the use-case, than don't worry about the aesthetics. Seriously, many vendors also just don't care... especially after they already were paid. Best of luck =3

ProgramMax 6/25/2025||
0xFF is 8-bit. PNG supports up to 16-bit. It always has. Plus, PNG now supports full HDR so the fireball won't look washed out.

I think your experience is with some tool that made bad PNGs. That is a problem with the tool, not the format.

Joel_Mckay 6/25/2025||
EXR stores the color-space information differently, and you missed the point.

Have a look at a tutorial that dives into the basic details, and consider learning something:

https://www.youtube.com/watch?v=pLt1230dtYE

https://www.youtube.com/watch?v=mb0b83MML78

https://www.youtube.com/watch?v=egtnkhuUe_E

PNG has its use-cases, and some people do expect that baked color-space garbage look given it dominates a lot of low-end media. Have a great day =3

ProgramMax 6/25/2025||
I'm trying to follow your point. But...there are problems with your claims. Yes, EXR stores color-space differently than PNG. Because EXR doesn't store color space at all.

In the first video, the person loads the image and manually chooses a gamma transfer function with 2.2. If that was then saved, it would produce the washed-out fireball you mentioned.

In the second video, the person loads the image and manually chooses rec.709, which is also gamma tf and also produces washed-out fireball. In fact, the EXR image he loads literally has a bright fireball and you see it get washed out.

If you want to make claims about EXR being better than PNG, you need to say why storing the values as floating point is better than integer. But the blown-out fireball example is just incorrect. As evidence, I'll point to HDR. ANYTHING you see in an HDR movie is now 100% losslessly reproducible in a PNG.

Joel_Mckay 6/25/2025||
[flagged]
More comments...