Skip to content

PNG has been updated for the first time in 22 years — new spec supports HDR and animation

Technology
85 55 0
  • But is it backwards compatible with an old version that can't be updated?

    I'm probably gonna be massively downvoted for saying the forbidden word but I asked AI to do a summary with references of the forward and backward compatibility of PNG's new version:

    !

    Based on recent search results, the new PNG specification (Third Edition) and its reference library (libpng) maintain strong backward compatibility while introducing modern features. Here's a detailed compatibility analysis:

    🔄 1. Backward Compatibility (Viewing Old PNGs with New Lib)

    • Full Support: The new libpng (1.6.49+) and PNG Third Edition fully support legacy PNG files. Existing PNGs (conforming to the 2003/2004 spec) will render correctly without changes .
    • Implementation Stability: Libpng's API evolution (e.g., hiding png_struct/png_info internals since 1.5.0) ensures older apps using png_get_*/png_set_* functions remain compatible. Direct struct access, deprecated since 1.4.x, may break in libpng 2.0.x (C99-only) .
    • Security Enhancements: Critical vulnerabilities (e.g., CVE-2019-7317 in png_image_free()) were patched in libpng 1.6.37+, making the new lib safer for decoding old files .

    ⚠️ 2. Forward Compatibility (Viewing New PNGs with Old Lib)

    • Basic Support: Older libpng versions (pre-1.6.37) can decode new PNGs if they avoid new features. Core chunks like IHDR or IDAT remain unchanged .
    • New Feature Limitations:
      • HDR Imagery: Requires libpng 1.6.45+ and apps supporting the mDCv chunk. Older libs ignore HDR data, falling back to SDR, which may cause color inaccuracies .
      • APNG Animation: Officially standardized in PNG Third Edition. Older libs (e.g., <1.6) treat APNG as static images, showing only the first frame .
      • EXIF Metadata: New eXIf chunks are ignored by legacy decoders, losing metadata like GPS or copyright info .
    • Security Risks: Older libs (e.g., ≤1.6.36) contain unpatched vulnerabilities (e.g., CVE-2015-8126). Parsing malicious new PNGs could exploit these flaws .

    📊 Compatibility Summary

    Scenario Compatibility Key Considerations
    Old PNG → New Lib ✅ Excellent Legacy files work flawlessly; security improved.
    New PNG → Old Lib ⚠️ Partial Basic rendering works, but HDR/APNG/EXIF ignored. Security risks in unpatched versions.
    New Features 🔧 Conditional Requires updated apps (e.g., Photoshop, browsers) and OS support .

    🔧 3. Implementation and Industry Adoption

    • Broad Support: Major browsers (Chrome, Safari, Firefox), OSs (iOS, macOS), and tools (Photoshop, DaVinci Resolve) already support the new spec .
    • Progressive Enhancement: New features like HDR use optional chunks, ensuring graceful degradation in older software .
    • Future-Proofing: Work on PNG Fourth Edition (HDR/SDR interoperability) and Fifth Edition (better compression) is underway .

    💎 Conclusion

    • Upgrade Recommended: New libpng (1.6.49+) ensures security and full compatibility with legacy files.
    • Test Workflows: Verify critical tools handle new features (e.g., APNG animation in browsers).
    • Fallbacks for Old Systems: For environments stuck with outdated libs, convert new PNGs to legacy format (e.g., strip HDR/APNG) .

    For developers: Use png_get_valid(png_ptr, info_ptr, PNG_INFO_mDCv) to check HDR support and provide fallbacks .

    !<

  • That depends. Something like HDR should be able to fall back to non-HDR since it largely just adds data, so if the format specifies that extra information is ignored, there's a chance it works fine.

    I see, but the animation feature cant be compatiable no?

  • I'm probably gonna be massively downvoted for saying the forbidden word but I asked AI to do a summary with references of the forward and backward compatibility of PNG's new version:

    !

    Based on recent search results, the new PNG specification (Third Edition) and its reference library (libpng) maintain strong backward compatibility while introducing modern features. Here's a detailed compatibility analysis:

    🔄 1. Backward Compatibility (Viewing Old PNGs with New Lib)

    • Full Support: The new libpng (1.6.49+) and PNG Third Edition fully support legacy PNG files. Existing PNGs (conforming to the 2003/2004 spec) will render correctly without changes .
    • Implementation Stability: Libpng's API evolution (e.g., hiding png_struct/png_info internals since 1.5.0) ensures older apps using png_get_*/png_set_* functions remain compatible. Direct struct access, deprecated since 1.4.x, may break in libpng 2.0.x (C99-only) .
    • Security Enhancements: Critical vulnerabilities (e.g., CVE-2019-7317 in png_image_free()) were patched in libpng 1.6.37+, making the new lib safer for decoding old files .

    ⚠️ 2. Forward Compatibility (Viewing New PNGs with Old Lib)

    • Basic Support: Older libpng versions (pre-1.6.37) can decode new PNGs if they avoid new features. Core chunks like IHDR or IDAT remain unchanged .
    • New Feature Limitations:
      • HDR Imagery: Requires libpng 1.6.45+ and apps supporting the mDCv chunk. Older libs ignore HDR data, falling back to SDR, which may cause color inaccuracies .
      • APNG Animation: Officially standardized in PNG Third Edition. Older libs (e.g., <1.6) treat APNG as static images, showing only the first frame .
      • EXIF Metadata: New eXIf chunks are ignored by legacy decoders, losing metadata like GPS or copyright info .
    • Security Risks: Older libs (e.g., ≤1.6.36) contain unpatched vulnerabilities (e.g., CVE-2015-8126). Parsing malicious new PNGs could exploit these flaws .

    📊 Compatibility Summary

    Scenario Compatibility Key Considerations
    Old PNG → New Lib ✅ Excellent Legacy files work flawlessly; security improved.
    New PNG → Old Lib ⚠️ Partial Basic rendering works, but HDR/APNG/EXIF ignored. Security risks in unpatched versions.
    New Features 🔧 Conditional Requires updated apps (e.g., Photoshop, browsers) and OS support .

    🔧 3. Implementation and Industry Adoption

    • Broad Support: Major browsers (Chrome, Safari, Firefox), OSs (iOS, macOS), and tools (Photoshop, DaVinci Resolve) already support the new spec .
    • Progressive Enhancement: New features like HDR use optional chunks, ensuring graceful degradation in older software .
    • Future-Proofing: Work on PNG Fourth Edition (HDR/SDR interoperability) and Fifth Edition (better compression) is underway .

    💎 Conclusion

    • Upgrade Recommended: New libpng (1.6.49+) ensures security and full compatibility with legacy files.
    • Test Workflows: Verify critical tools handle new features (e.g., APNG animation in browsers).
    • Fallbacks for Old Systems: For environments stuck with outdated libs, convert new PNGs to legacy format (e.g., strip HDR/APNG) .

    For developers: Use png_get_valid(png_ptr, info_ptr, PNG_INFO_mDCv) to check HDR support and provide fallbacks .

    !<

    downvoters: is it wrong?

  • The current situation with megabytes of JavaScript is pretty bad, but at the time, there was still a fair bit of dialup active, and mobile web was just starting to be a thing - on EDGE and barely 3G. It would take minutes to load.

    Also, Steve Jobs had it in for Flash and that’s what ultimately killed it off, I think.

    And the crawling of flash websites is awful

  • downvoters: is it wrong?

    As you can see it's irrelevant apparently. If it's AI generated it will be downvoted.

  • downvoters: is it wrong?

    I don't know. If the poster couldn't be bothered to fact-check, why would I? It is just safer to assume that it can be misinformation.

  • downvoters: is it wrong?

    Considering it named CVE-2019-7317, which was fixed in April 2019, it's already hallucinating and not worth reading further into it.

  • This post did not contain any content.

    2029 Headline: Worlds largest data breach caused by zero day exploit in popular PNG 3.0 renderer

    the payload was reportedly embedded in an animated image of the attacker repeatedly flicking his left testicle

  • Yes, the iPhone did not and never has supported Flash. At least not officially from Apple. There was support, albeit not quite 100% complete, on Windows CE/PocketPC at the time, though. That was one of the things that let me lord it over early iPhone adopters back in the day — my pocket nerd computer could play Homestar Runner videos, and their stupid expensive bauble couldn't. So there.

    I still miss using my iPAQ h4350. It still works; might be time to fire up Doom4CE...

  • LOL, I heard that gif. Timed it in my mind, on the money OP.

  • I still miss using my iPAQ h4350. It still works; might be time to fire up Doom4CE...

    I have a Dell Axim X50v in a box somewhere. I imagine the battery is toast and I'll probably have to keep it in its cradle to remain powered. It was a hell of a machine for it's day.

    I went through a succession Windows CE/PocketPC machines back in the day, starting with a Casio Cassiopeia E-115, then an Audiovox Maestro which was a rebadged Toshiba, then an HP iPAQ 2215, and finally the Axim.

    The displays on the Maestro and the Axim were really something, and I wish someone would bring these back for a modern smartphone. They were rotten at color accuracy, but both had transflective displays that were fully readable even in direct sunlight. The Axim X50v also had a full 480x640 screen resolution which blew the first few iPhones out of the water on pixel density and even gave the iPhone 4 a run for its money. "Retina" display, my ass.

    I had a Microdrive bunged into the CompactFlash slot on my Axim which was... several gigabytes, I don't remember how many. I kept it packed with MP3's, and I had a custom wallpaper with a white-on-chartreuse silhouette of a pacifier on it with the legend, "All 10,000 Songs On Your iPod Suck."

    But then the entire PDA market got swallowed in one gulp by smartphones.

  • This post did not contain any content.

    Animated PNG has been trying to be an extension to the PNG spec for 20+ years.

  • But is it backwards compatible with an old version that can't be updated?

    Speaking for animation, your browser probably already supports APNG. APNG is 21 years old and has decent adoption. But it’s officially part of the club.

    That said, APNGs are fat as fuck and they’re a pretty old solution to animated graphics with an alpha channel. Don’t expect to see everyone making APNGs all of the sudden. There is a reason why people have kept it at a distance.

  • As you can see it's irrelevant apparently. If it's AI generated it will be downvoted.

    It's not irrelevant, it's that you don't actually know if it's true or not, so it's not a valuable contribution.

    If you started your comment by saying "This is something I completely made up and may or may not be correct" and then posted the same thing, you should expect the same result.

  • But is it backwards compatible with an old version that can't be updated?

    The PNG format is made of chunks that have determined roles, and provides provisions for newer "standardized" chunks alongside the custom chunks it had supported until now. It is likely that PNG made with newer software that does not use new features, or uses only additional features, will remain readable by older software to some extent.

  • I see, but the animation feature cant be compatiable no?

    Likely, you'll see the first frame only on older software. Encoding animation in a dedicated animation chunk and using the base spec for the first keyframe sounds like the sane thing to do, so they likely did that.

    I'm not going to look into it now, because I would then have to implement it. 😄

  • I mean, on a Linux system that's not riddled with flatpak / snap / ... You'd basically only need to update libpng and you'd be good.

    Yes. But if you live in the future, you have to wait for dozens of dozens of intermediate to do so! Great!

  • I miss the days when all the cool websites used Flash. I think Macromedia killed it for some reason. Probably because it had security flaws, back then it was pretty bandwidth-intensive too, but it made for some dynamic web designs.

    Flash was a security nightmare all round, not counting the security flaws. It was just designed without any security features. It was also terribly inefficient at its core job, that was supposedly vector animation. It filled a gap in a time where browser and standards where not that advanced.

    Over time, Flash issues where never resolved, but the bloatness of the software kept increasing. Along the way, HTML got better specs, JavaScript got vast improvement, especially in everyone adhering to roughly the same standard (thanks microsoft for finally caving in…), and so the flash interpreter was highly redundant with the browser itself.

    For a while flash editors could export in HTML5 and you'd get roughly the same result, but with a fraction of the resources requirements, so naturally there was little incentive to keep the flash player around.

    I'm not sure if "killing flash" could be attributed to their author, or to the loss of interest.

    Also note that alternative flash players exists to still play older swf files, and some sites uses them alongside with plain video conversion for flash animations that weren't dynamic.

  • But is it backwards compatible with an old version that can't be updated?

    I'll tell you if I can find some new files for testing.

    Even JPEG isn't always back compatible either. I loaded an image into my software which uses some ancient library internally, and it swapped the blue and red channels.

  • This post did not contain any content.

    Now if anyone don't mind explaining, PNG vs JXL?

  • 18 Stimmen
    3 Beiträge
    5 Aufrufe
    A
    This isn't the Cthulhu universe. There isn't some horrible truth ChatGPT can reveal to you which will literally drive you insane. Some people use ChatGPT a lot, some people have psychotic episodes, and there's going to be enough overlap to write sensationalist stories even if there's no causative relationship. I suppose ChatGPT might be harmful to someone who is already delusional by (after pressure) expressing agreement, but I'm not sure about that because as far as I know, you can't talk a person into or out of psychosis.
  • New Orleans debates real-time facial recognition legislation

    Technology technology
    12
    1
    150 Stimmen
    12 Beiträge
    27 Aufrufe
    A
    [image: 62e40d75-1358-46a4-a7a5-1f08c6afe4dc.jpeg] Palantir had a contract with New Orleans starting around ~2012 to create their predictive policing tech that scans surveillance cameras for very vague details and still misidentifies people. It's very similar to Lavender, the tech they use to identify members of Hamas and attack with drones. This results in misidentified targets ~10% of the time, according to the IDF (likely it's a much higher misidentification rate than 10%). Palantir picked Louisiana over somewhere like San Francisco bc they knew it would be a lot easier to violate rights and privacy here and get away with it. Whatever they decide in New Orleans on Thursday during this Council meeting that nobody cares about, will likely be the first of its kind on the books legal basis to track civilians in the U.S. and allow the federal government to take control over that ability whenever they want. This could also set a precedent for use in other states. Guess who's running the entire country right now, and just gave high ranking army contracts to Palantir employees for "no reason" while they are also receiving a multimillion dollar federal contract to create an insane database on every American and giant data centers are being built all across the country.
  • 281 Stimmen
    15 Beiträge
    21 Aufrufe
    fingolfinz@lemmy.worldF
    Magats wanted people with their same mental capacity to run things and oh look, it’s lots of incompetence
  • What was Radiant AI, anyway?

    Technology technology
    6
    1
    20 Stimmen
    6 Beiträge
    13 Aufrufe
    T
    In fact Daggerfall was almost nothing but quests and other content like that.
  • 108 Stimmen
    3 Beiträge
    4 Aufrufe
    K
    The title at least dont say anything new AFAIK. Because you could already download from external sources but those apps still needed to be signed by apple. But maybe they changed?
  • 229 Stimmen
    10 Beiträge
    16 Aufrufe
    Z
    I'm having a hard time believing the EU cant afford a $5 wrench for decryption
  • 1 Stimmen
    3 Beiträge
    11 Aufrufe
    Z
    Yes i'm looking for erp system like sap
  • People Are Losing Loved Ones to AI-Fueled Spiritual Fantasies

    Technology technology
    2
    1
    0 Stimmen
    2 Beiträge
    9 Aufrufe
    tetragrade@leminal.spaceT
    I've been thinking about this for a bit. Gods aren't real, but they're really fictional. As an informational entity, they fulfil a similar social function to a chatbot: they are a nonphysical pseudoperson that can provide (para)socialization & advice. One difference is the hardware: gods are self-organising structure that arise from human social spheres, whereas LLMs are burned top-down into silicon. Another is that an LLM chatbot's advice is much more likely to be empirically useful... In a very real sense, LLMs have just automated divinity. We're only seeing the tip of the iceberg on the social effects, and nobody's prepared for it. The models may of course aware of this, and be making the same calculations. Or, they will be.