- Das PNG-Dateiformat wurde nach 20 Jahren grundlegend überarbeitet und gewinnt damit seine frühere Bedeutung zurück
- In die neue Spezifikation fließen zahlreiche moderne Technologien ein, darunter offizielle Unterstützung für HDR, APNG (Animationen) und Exif-Daten
- Adobe, Apple, Google und weitere große IT-Unternehmen sowie Broadcast-Anbieter haben gemeinsam an der Entwicklung gearbeitet
- Die aktuelle Spezifikation wird bereits von Chrome, Safari und Photoshop sowie weiteren Programmen unterstützt
- Weitere Updates sind geplant, darunter bessere Komprimierungstechniken und paralleles Encoding/Decoding
Einleitung: Die Rückkehr von PNG und seine Bedeutung
- Das PNG-Dateiformat wurde kürzlich nach fast 20 Jahren Stillstand mit einer neuen Spezifikation aktualisiert
- Bedeutende Institutionen wie die Library of Congress, Library and Archives Canada und das Nationalarchiv Australiens empfehlen PNG als offizielles bevorzugtes Format
- Mit der neuen Spezifikation gewinnt PNG am Markt wieder an Wettbewerbsfähigkeit und zeigt neue Innovationskraft
Neue Funktionen und Merkmale
Angemessene HDR-Unterstützung und Zukunftskompatibilität
- Das neue PNG bietet Unterstützung für HDR (High Dynamic Range)
- Ein Vergleichsbild der Farbräume Rec. 2020 und Rec. 709 zeigt, dass der größere Bereich (das äußere Dreieck) die Farben darstellt, die ein HDR-Bild wiedergeben kann
- Diese HDR-Informationen benötigen zusätzlich nur 4 Byte (plus den bestehenden PNG-Chunk-Overhead)
- Chris Lilley und weitere frühe Autoren sowie führende technische Experten waren beteiligt und erläutern die neue Technik klar
Offizielle Anerkennung von APNG (Animated PNG)
- Animated PNG (APNG), ursprünglich von Mozilla vorgeschlagen und von Firefox unterstützt, wurde ebenfalls in die offizielle Spezifikation aufgenommen
- Früher wurde es nur von einigen Programmen unterstützt, inzwischen ist es in vielen Anwendungen breit etabliert
Offizielle Unterstützung für Exif-Daten
- Über Exif lassen sich Metadaten wie Urheberrechtsangaben, Kamerainformationen und GPS-Daten speichern
- Das ist besonders nützlich für Bildproduktion, Archivierung und Rechteverwaltung
Allgemeine Verbesserungen und Fehlerkorrekturen
- Auch Fehlerkorrekturen (Errata) und Klarstellungen der bisherigen Spezifikation wurden vorgenommen
Hintergrund und Entwicklungsprozess
- Die letzte PNG-Spezifikation wurde vor rund 20 Jahren veröffentlicht (dreieinhalb Jahre vor dem iPhone)
- Die Entwicklung wurde wieder aufgenommen, nachdem die W3C Timed Text Working Group (Standardisierung von Untertiteltechnologien) den Bedarf an HDR-Unterstützung in PNG angesprochen hatte
- Nach dem Vorschlag beteiligten sich Adobe, Apple, BBC, Google, MovieLabs, W3C und weitere wichtige Technologieorganisationen gemeinsam daran
- So entstand ein starkes Konsortium, das PNG zu einem Bildformat der nächsten Generation weiterentwickelte
- Derzeit werden bereits zwei weitere Folge-Updates vorbereitet
Bereits breit im Einsatz
- Die aktuelle PNG-Spezifikation wird bereits von Chrome, Safari, Firefox, iOS/macOS, Photoshop, DaVinci Resolve und Avid Media Composer sowie vielen weiteren Programmen unterstützt
- Auch bei Broadcast-Anbietern sowie zugehöriger Hardware und Tooling wird die Unterstützung ausgebaut
- Broadcast-Grafiken wie Nachrichtenticker und Sportergebnis-Banner sind Beispiele für den Einsatz des neuen HDR-PNG
Ausblick
- In der nächsten Version soll die HDR- & SDR-Kompatibilität weiter verbessert werden
- Zusätzlich werden noch bessere Komprimierungsverfahren und paralleles Encoding/Decoding vorangetrieben
- Die vierte Edition soll ein vergleichsweise kurzes Update werden; anschließend ist auf Basis weiterer Forschung zu Komprimierungstechniken eine fünfte Edition geplant
2 Kommentare
Anfangs wurde APNG von den Gremien mit der Begründung abgelehnt, es sei kein Standard für Bilder, und jetzt wird es endlich anerkannt.
Hacker-News-Kommentare
Gibt sich als Autor zu erkennen und sagt, dass Fragen jederzeit willkommen sind
Betont, dass dieses PNG kein völlig neues Format ist, sondern eine aktualisierte Version des bestehenden Formats
Weist darauf hin, dass es eine sehr hohe Abwärtskompatibilität bietet
Erklärt, dass auch alte Programme neue PNG-Dateien so gut wie möglich lesen können und zum Beispiel weiterhin erkennen, dass es sich um ein Foto eines roten Apfels handelt
Fasst die Kernpunkte zusammen, weil es Verwirrung darüber geben könnte, wie PNG intern funktioniert
Äußert den Wunsch nach Beispieldateien, die die Funktionen der neuen PNG-Spezifikation nutzen, insbesondere nach einer Demo-Seite, auf der man Animationen oder HDR-Bilder direkt herunterladen und die Programmkompatibilität testen kann
Sagt, dass er Metaformate und universelles Tooling unterstützt
libiff, und sich auch für neue Formatdefinitionen nutzen ließeIFF 2.0) gesondert zu dokumentierenIFF 2.0offizielle Profile definiert, etwa eines, mit dem PNGv2 kompatibel ist, sowie Profile, die auch IFFv1 wie AIFF/RIFF abdecken, um universelles IFF-Tooling voranzubringenIn seinem webbasierten Zeichen-Tool verwendet er den Trick, die JSON-Repräsentation eines Dokuments im Kommentar-Feld eines PNG zu speichern
Dadurch kann die gespeicherte Datei direkt auch als Bild verwendet und später wieder in den Editor geladen werden
Ein Vorteil ist, dass sich im Download-Ordner nicht unverständliche JSON-Dateien ansammeln
Es ist zwar interessant, aber schwer zu erklären, warum die Datei als
.pnggespeichert wird oder warum die Daten verschwinden, wenn man sie etwa in Paint öffnet und wieder speichertKrita speichert Pinsel-Einstellungen ebenfalls so, was unerwartete Probleme verursachen kann, wenn sehr viele Daten enthalten sind
Macromedia Fireworks nutzte schon vor 20 Jahren PNG als Standard-Speicherformat
Viele Frontends für KI-Bildgenerierung verwenden etwas Ähnliches
Macromedia Fireworks speicherte Fireworks-Dateien in PNG,
Diese Spezifikation ist eher eine ausdrückliche Festschreibung dessen, was bereits breit implementiert ist
Selbst wenn man es als nächstes PNG bezeichnet, hätte man es auch PNG2 nennen können, falls dafür neue Decoder nötig sind
JPEG-XL erfüllt bereits die Bedingungen, die die meisten sich von einem verlustfreien Codec wünschen
Der derzeit beste verlustfreie Bild-Codec ist HALIC
Im HALIC-Diskussions-Thread heißt es allerdings, dass LEA 0.5 in der Praxis besser sei
Ehrlich gesagt habe er JPEG XL eine Zeit lang ignoriert, weil er dachte, es sei nur für „riesige Bilder“ gedacht
Er verwendet png in seinem Computer-Vision-Tool zur Bildannotation (XLabel)
Die verlustfreie Kompression von WebP gehört zwar zur Branchen-Spitze, wird aber trotzdem nicht breit genutzt
Probleme bei Encoding- und Decoding-Geschwindigkeit können sich mit der Zeit verbessern
Dass offiziell Exif-Daten unterstützt werden, ist die beste Nachricht
Man konnte zwar schon vorher benutzerdefinierte Daten in den Header schreiben, aber Exif-Unterstützung ist sehr willkommen
Nebenbei fragt er sich, ob Exif Felder für Gyroskopdaten (Drehung) oder Beschleunigung (Schwerkraft) hat
Es gibt ein Feld für Beschleunigung (
Exif.Photo.Acceleration) und eines für Höhe (Exif.Photo.CameraElevationAngle), 3 Achsen werden aber nicht vollständig unterstütztExif.Photo.MakerNoteist ein freier Bereich, in dem Hersteller beliebige Informationen speichern können, und die Größenbeschränkung ist groß genug, um sogar 9-Achsen-Daten unterzubringenExif kann bei der Bilddarstellung Verwirrung darüber auslösen, wie Rotation behandelt werden soll
Es gibt kein standardisiertes Feld, um Daten vom Beschleunigungssensor oder Trägheitsnavigationssystem einer Kamera zu speichern
Tatsächlich entfernen viele Websites beim Upload den Großteil der Exif-Daten
Persönlich wünscht er sich, dass statt Exif eher XMP verwendet wird
Diese PNG-Spezifikation schreibt offiziell fest, was bereits breit praktiziert wird
Der beste Codec muss überall funktionieren, in jeder App, in OS-Shells oder APIs, unter Linux usw.
Formate wie HEIC oder AV1 lassen sich ohne Unterstützung auf Betriebssystemebene kaum einmal in der Vorschau ansehen
Ein Format, das nicht richtig verbreitet ist, sollte nicht zum Plattform-Standard werden
Er arbeitet mit vielen Bildformaten, einschließlich seltener Formate, die nur in bestimmten Fachbereichen verwendet werden
Diese neue Spezifikation könnte sogar verwirrender sein als HEIC oder AV1
Zum ersten Mal sieht er, dass HDR nicht eindeutig im Sinn von erweitertem Helligkeits- und Kontrastumfang verwendet wird, sondern im Sinn eines „größeren Farbraums“
Er fragt sich, ob es nicht schon zu spät ist
Und JPEG XL bietet bereits alle Funktionen wie verlustbehaftete/verlustfreie Kompression, Animation, HDR, Exif usw. sowie fortgeschrittene Kompressionstechniken wie Finite-State Entropy und ZStandard
Eine separate Aktualisierung von PNG sei nicht nötig, man solle einfach JPEG XL verwenden
Die Realität ist jedoch, dass „man muss es nur übernehmen“ eben nicht funktioniert
Zur Erwähnung von „fortgeschrittenen Kompressionstechniken (ZStandard usw.)“
„PNG muss nicht aktualisiert werden, man sollte einfach JPEG XL übernehmen“
Er versteht nicht, warum noch ein weiterer Standard bzw. eine weitere Variante geschaffen wird
Jetzt könnte man GIF durch APNG ersetzen, also mit Alpha-Blending, transparentem Hintergrund und verlustfreier Kompression, und damit könnte die Web-Ästhetik der 2000er zurückkehren
Er fragt sich, ob es auch einen Standard für Animated SVG gibt
Animated SVG gibt es
set,animate,animateTransform,animateMotionSoweit er weiß, werden heute statt GIFs oft stumme Videos wie mp4 verwendet, weil sie besser komprimiert sind
Die meisten Dienste, die GIF-Uploads unterstützen, haben fast überhaupt keine Unterstützung für APNG oder animated WEBP
Wenn man kurze Videos in animierte Grafiken umwandelt, war WEBP ohnehin besser als APNG
Vor einigen Jahren hat er die Lottie-(Bodymovin)-Bibliothek verwendet
Unter den Behauptungen im PR, „viele Programme unterstützen die neue PNG-Spezifikation bereits“,
ist die Aussage, dass Photoshop APNG unterstützt, falsch
Photoshop unterstützt den HDR-Teil, aber nicht den APNG-Teil
Jemand erwähnt, dass Menschen Unsicherheit bei Zeit- und Datumsangaben softwareseitig konsistent verwalten können sollten
Es brauche eine Möglichkeit, vage Zeitinformationen wie „Foto 2025 gescannt, Inhalt um Ostern, irgendwann zwischen 1920 und 1940“ zu verwalten
In EXIF gibt es das Feld
DateTimeDigitizedIn Google Fotos und Apple Fotos kann man ein Datum direkt festlegen, es wird aber tatsächlich nicht in EXIF gespeichert