- Le format de fichier PNG fait l’objet d’une révision majeure pour la première fois en 20 ans et retrouve son statut d’antan
- Cette spécification intègre de nombreuses technologies récentes, notamment la prise en charge du HDR, d’APNG (animation) et des données Exif de manière officielle
- Le développement a été mené conjointement par de grandes entreprises IT comme Adobe, Apple et Google, ainsi que des acteurs du broadcast
- La spécification la plus récente est déjà prise en charge par plusieurs logiciels, dont Chrome, Safari et Photoshop
- D’autres mises à jour sont prévues, avec notamment l’ajout de meilleures technologies de compression et de l’encodage/décodage parallèle
Introduction : le retour du PNG et son importance
- Le format de fichier PNG a récemment été mis à jour avec une nouvelle spécification, mettant fin à près de 20 ans de stagnation
- De grandes institutions comme la Bibliothèque du Congrès des États-Unis, Bibliothèque et Archives Canada, ou encore les Archives nationales d’Australie adoptent le PNG comme format officiellement recommandé
- Grâce à cette nouvelle spécification, le PNG retrouve sa compétitivité sur le marché et démontre sa capacité d’innovation
Nouvelles fonctions et caractéristiques
Une vraie prise en charge du HDR et une compatibilité tournée vers l’avenir
- Le nouveau PNG propose la prise en charge du HDR (High Dynamic Range)
- Dans l’image de comparaison entre les espaces colorimétriques Rec. 2020 et Rec. 709, la zone plus large (le triangle extérieur) montre les couleurs qu’une image HDR peut représenter
- Ces informations HDR ne nécessitent que 4 octets supplémentaires (ainsi que la surcharge habituelle des chunks PNG)
- Chris Lilley, parmi les auteurs historiques, ainsi que d’autres experts techniques majeurs, ont participé au projet et expliqué clairement ces nouvelles technologies
Reconnaissance officielle d’APNG (PNG animé)
- Le PNG animé (APNG), d’abord proposé par Mozilla et pris en charge par Firefox, a lui aussi été intégré à la spécification officielle
- Auparavant limité à certains logiciels, il est désormais largement adopté par divers programmes
Prise en charge officielle des données Exif
- Exif permet de stocker des métadonnées comme les droits d’auteur, les informations sur l’appareil photo et les données GPS
- Son utilité est importante pour la création et l’archivage d’images, ainsi que pour la gestion des droits
Améliorations globales et correction d’erreurs
- La correction des erreurs (errata) et la clarification de la spécification existante ont également été menées
Contexte et processus de développement
- La dernière spécification PNG remontait à environ 20 ans (soit 3 ans et demi avant la sortie de l’iPhone)
- Le W3C Timed Text Working Group (normalisation des technologies de sous-titrage) a relancé le développement en soulevant le besoin d’ajouter la prise en charge du HDR au PNG
- Une fois la proposition formulée, de grands acteurs technologiques comme Adobe, Apple, BBC, Google, MovieLabs et le W3C ont rejoint l’effort commun
- Un consortium solide s’est formé, transformant le PNG en un format d’image de nouvelle génération
- Deux mises à jour de suivi sont déjà en préparation
Une adoption déjà très large
- La dernière spécification PNG est prise en charge par de nombreux logiciels et plateformes, dont Chrome, Safari, Firefox, iOS/macOS, Photoshop, DaVinci Resolve et Avid Media Composer
- La prise en charge s’étend aussi aux diffuseurs, ainsi qu’au matériel et aux outils associés
- Les bandeaux d’actualités, bannières de scores sportifs et autres images de diffusion sont des exemples d’usage du nouveau PNG HDR
Prochaines étapes
- La prochaine édition visera à améliorer encore la compatibilité HDR & SDR
- En parallèle, des travaux avancent aussi sur des méthodes de compression plus performantes et l’encodage/décodage parallèle
- La quatrième édition devrait être une mise à jour relativement brève, avant une cinquième édition fondée sur les recherches à venir sur la compression
2 commentaires
Au début, ils ont refusé l’APNG en disant que ce n’était pas une norme officielle pour les images, et ce n’est que maintenant qu’ils le reconnaissent.
Avis Hacker News
L’auteur précise qu’il est impliqué dans le projet et indique que les questions sont toujours bienvenues
Il insiste sur le fait que ce PNG n’est pas un format entièrement nouveau, mais une version mise à jour du format existant
Il indique que la rétrocompatibilité est très élevée
Il explique que même les anciens programmes peuvent lire les nouveaux fichiers PNG aussi bien que possible, et par exemple continuer à reconnaître qu’il s’agit d’une photo de pomme rouge
Il résume les points essentiels, car le fonctionnement interne de PNG peut prêter à confusion
Il dit qu’il aimerait voir s’il existe des fichiers d’exemple exploitant les fonctionnalités de la nouvelle spécification PNG, en particulier une page de démo permettant de télécharger directement des animations ou des images HDR pour tester la compatibilité des logiciels
Il précise qu’il est favorable aux métaformats et à l’outillage générique
Dans mon outil de dessin web, j’utilise une astuce qui consiste à stocker la représentation JSON du document dans le champ de commentaire d’un PNG
Cela permet d’utiliser directement le fichier enregistré comme image, tout en pouvant le recharger dans l’éditeur
Cela évite aussi d’accumuler dans le dossier de téléchargements des fichiers JSON difficiles à identifier
C’est amusant, mais il est délicat d’expliquer aux utilisateurs pourquoi le fichier est enregistré en
.png, ou pourquoi les données disparaissent s’ils l’ouvrent puis l’enregistrent dans Paint ou ailleursKrita stocke aussi ses paramètres de pinceau de cette manière, mais cela peut poser des problèmes inattendus quand la quantité de données devient trop importante
Macromedia Fireworks utilisait déjà PNG comme format d’enregistrement par défaut il y a 20 ans
Beaucoup de frontends de génération d’images par IA font quelque chose de similaire
Macromedia Fireworks stockait ses fichiers Fireworks dans des PNG,
Cette spécification ressemble surtout à une formalisation de quelque chose déjà largement implémenté
Même s’il s’agit d’un PNG de nouvelle génération, si cela nécessite un nouveau décodeur on aurait aussi bien pu l’appeler PNG2
JPEG-XL remplit déjà la plupart des critères qu’on attend d’un codec sans perte
Aujourd’hui, le meilleur codec d’image sans perte est HALIC
D’après ce fil de discussion sur HALIC, LEA 0.5 serait en réalité supérieur
Pour être honnête, pendant un moment j’ai ignoré JPEG XL parce que je pensais que c’était seulement pour les « images géantes »
J’utilise
pngdans un outil d’annotation d’images pour la computer vision (XLabel)La compression sans perte de WebP est parmi les meilleures du secteur, et pourtant elle reste peu utilisée
Les problèmes de vitesse d’encodage/décodage peuvent s’améliorer avec le temps
Le meilleur point, c’est que la prise en charge officielle des données Exif a été intégrée
On pouvait déjà écrire des données personnalisées dans l’en-tête auparavant, mais la prise en charge d’Exif est vraiment bienvenue
Au passage, il se demande s’il existe dans Exif des champs pour le gyroscope (rotation) ou l’accéléromètre (gravité)
Il existe un champ pour l’accélération (
Exif.Photo.Acceleration) et un autre pour l’altitude (Exif.Photo.CameraElevationAngle), mais pas de prise en charge des trois axesExif.Photo.MakerNoteest un espace libre où le constructeur peut stocker les informations qu’il veut, avec une taille suffisante pour enregistrer même des données 9 axesExif peut introduire de la confusion dans le rendu des images selon la manière dont la rotation est traitée
Il n’existe pas de champ standard pour enregistrer les données d’accéléromètre ou de centrale inertielle d’un appareil photo
En pratique, de nombreux sites web suppriment la majorité des données Exif au moment de l’upload
Personnellement, il aimerait que les gens utilisent XMP plutôt qu’Exif
Cette nouvelle spécification PNG formalise officiellement des pratiques déjà largement répandues
Le meilleur codec est celui qui fonctionne partout, dans n’importe quelle app, dans le shell de l’OS, via les API, sous Linux, etc.
Des formats comme HEIC ou AV1 sont difficiles à prévisualiser si le système d’exploitation ne les prend pas en charge nativement
Un format qui ne circule pas correctement ne devrait pas devenir le choix par défaut d’une plateforme
Je travaille avec de nombreux formats d’image, y compris des formats rares propres à certains domaines
Cette nouvelle spécification peut en fait être encore plus déroutante que HEIC ou AV1
C’est la première fois que je vois HDR utilisé non pas au sens d’une extension claire de la luminosité/plage de contraste, mais au sens de « plus large espace colorimétrique »
Je me demande si cela n’arrive pas trop tard
Et JPEG XL fournit déjà toutes les fonctions (compression avec ou sans perte, animation, HDR, Exif, etc.) ainsi que des techniques de compression avancées (finite-state entropy, ZStandard, etc.)
Je pense qu’il n’y a pas besoin d’une mise à jour distincte de PNG, il suffit simplement d’utiliser JPEG XL
Le problème, c’est que le « il suffit de l’adopter » ne fonctionne pas dans la réalité
À propos de la mention des « techniques de compression avancées (ZStandard, etc.) »
« Pas besoin de mettre à jour PNG, il suffit d’adopter JPEG XL »
Je ne comprends pas pourquoi on crée encore une autre norme (ou variante)
On va maintenant pouvoir remplacer GIF par APNG (alpha blending + fond transparent + compression sans perte), ce qui pourrait faire revivre l’esthétique web des années 2000
Il se demande aussi s’il existe une norme pour l’Animated SVG
Animated SVG existe bien
set,animate,animateTransform,animateMotionIl semble qu’aujourd’hui, à la place des GIF, on utilise davantage de courtes vidéos sans son (par exemple en mp4), car elles se compressent mieux
La plupart des services qui prennent en charge l’upload de GIF ne prennent presque jamais en charge APNG ou animated WEBP
Quand on convertit de courtes vidéos en graphismes animés, WEBP était déjà globalement meilleur qu’APNG
Il y a quelques années, il a utilisé la bibliothèque Lottie (Bodymovin)
Parmi les affirmations du PR selon lesquelles « beaucoup de programmes prennent déjà en charge la nouvelle spécification PNG »
La mention du support d’APNG par Photoshop est erronée
Photoshop prend en charge la partie HDR, mais pas la partie APNG
Quelqu’un évoque la nécessité pour les logiciels de gérer de manière cohérente l’incertitude sur l’heure et la date
Par exemple, un besoin de gérer des informations temporelles floues du type « photo numérisée en 2025, contenu situé autour de Pâques, entre 1920 et 1940 »
EXIF comporte un champ
DateTimeDigitizedGoogle Photos et Apple Photos permettent de définir directement une date, mais ne l’enregistrent pas réellement dans EXIF