- Le moteur Chromium rétablit la prise en charge de JPEG XL et un format d’image autrefois abandonné revient sous le feu des projecteurs
- En 2022, Google avait retiré JPEG XL au motif d’un « manque d’intérêt de l’écosystème », mais la pression continue de la communauté et des grandes entreprises a perduré
- Plusieurs organisations, dont Meta, Intel, Adobe, Cloudinary et Krita, ont publiquement soutenu le maintien du format
- Récemment, l’annonce de la PDF Association d’adopter JPEG XL comme format de base pour les contenus HDR a renforcé cette dynamique
- La décision de réintroduire Chrome est considérée comme un tournant augmentant la possibilité de standardisation grand public de JPEG XL
Contexte de la résurrection de JPEG XL
- En 2022, l’équipe Chromium a supprimé le code et les flags de JPEG XL, invoquant un « manque d’intérêt suffisant de l’écosystème » et un « manque d’avantages par rapport aux formats existants »
- À l’époque, la communauté s’était déjà prononcée en faveur du format, notamment via des soutiens de Meta, Intel, Cloudinary, Adobe, ffmpeg, libvips et Krita
- Des réactions ont ensuite suivi via des blogs, vidéos et réseaux sociaux pour souligner l’iniquité de cette décision de suppression
- À la fin de 2025, l’équipe Chromium a changé l’état du ticket JPEG XL, anciennement
Obsolete, en Assigned, lançant officiellement le processus de réintégration
- Au sein du groupe de développement Blink, Rick Byers a salué l’idée d’un décodeur JPEG XL performant et sûr au niveau mémoire
- Cette décision s’est appuyée sur des signaux positifs comme le support de Safari, l’évolution de la position de Firefox et l’impulsion de la PDF Association
Firefox et le développement d’un décodeur en Rust
- L’équipe Firefox a insisté sur la nécessité d’une version Rust, considérée comme « mémoire-sûre », en raison des risques de sécurité du décodeur libjxl basé sur le C++
- De ce fait, Google Research a commencé à développer l’implémentation Rust jxl-rs
- Ce projet a été un catalyseur pour renforcer la faisabilité d’une intégration sûre de JPEG XL dans les navigateurs
Mouvement d’adoption de la PDF Association
- Le CTO de la PDF Association, Peter Wyatt, a annoncé son intention d’inclure JPEG XL comme format d’image HDR par défaut dans la spécification PDF
- Cela agit comme un facteur de renforcement du potentiel de standardisation de JPEG XL dans les secteurs de la documentation et de l’édition
Principales caractéristiques techniques de JPEG XL
- Grâce à la recompression sans perte du JPEG d’origine, JPEG XL permet une réduction d’environ 30 % de la taille sans perte de qualité
- Prise en charge de la large gamme de couleurs et du HDR, avec prise en charge de canaux allant jusqu’à 32 bits et jusqu’à 4 099 canaux
- Prise en charge d’une taille d’image maximale de 1,073,741,823×1,073,741,824, permettant le traitement d’images ultra-étendues
- La prise en charge du décodage progressif (progressive decoding) améliore l’efficacité du transfert web
- Fonctions d’animation, de transparence alpha et de depth map incluses
- Une structure robuste face à la perte générationnelle réduit au minimum la dégradation de la qualité lors des réencodages successifs
Conclusion
- JPEG XL répond aux critères d’un format image de nouvelle génération, et le retour de Chrome constitue un moment décisif pour une diffusion à grande échelle
- Résultat de la pression communautaire de long terme, cette réintégration hisse JPEG XL au rang de nouveau candidat au statut de standard dans l’écosystème de l’imagerie web
- L’auteur accueille favorablement la réévaluation de Chromium, tout en soulignant que cette décision a été prise avec beaucoup de retard.
2 commentaires
2022-09-04 Show GN: J40 : décodeur JPEG XL
2022-11-02 Google Chrome prévoit d’abandonner la prise en charge de JPEG XL à partir de la version 110
2023-07-22 JPEG XL : ses débuts et la situation actuelle
2024-04-05 Jpegli - nouvelle bibliothèque d’encodage JPEG créée par Google
2024-09-21 Pourquoi Apple utilise JPEG XL sur l’iPhone 16 et son impact sur les photos
Avis Hacker News
L’une des fonctionnalités intéressantes mais peu connues de JPEG XL est un mode permettant un transcodage sans perte depuis JPEG tout en réduisant l’espace de stockage d’environ 20 %
Comme le bitstream d’entropie d’origine est conservé tel quel, c’est entièrement réversible
GCP applique cela à son DICOM Store API, ce qui permet de profiter des gains d’espace de JXL tout en servant à la volée une conversion en JPEG
Notre entreprise stocke des dizaines de PB de données dans GCP DICOM Store, donc nous espérons que cette fonctionnalité réduira fortement nos coûts annuels
Nous espérons aussi un support natif dans les navigateurs, et j’ai entendu dire que l’équipe Chrome finirait par l’adopter
Je voudrais savoir si c’est un PACS complet, une implémentation de WADO, ou simplement une API custom
Je me demande si le traitement est particulièrement coûteux
J’imagine que l’essentiel du coût de stockage vient du DICOM lui-même
Le concurrent de JPEG XL n’est pas AVIF
AVIF est déjà devenu un standard de fait, pris en charge par presque tous les navigateurs, et utilisé aussi comme format d’image par défaut chez Apple
JXL reste encore peu pris en charge par les navigateurs, mais se fait une place dans des niches comme l’archivage, la photo professionnelle et le médical
Dans une dizaine d’années, il pourrait devenir assez courant pour que les gens l’appellent simplement « JPEG »
AVIF est un standard ouvert et sans redevance, bien plus efficace que JPEG/WebP en compression, et d’un niveau comparable à JXL
La taille maximale des images JXL est plus grande, mais en adoption réelle AVIF est très largement devant
Quand AV2 arrivera, l’écart de qualité disparaîtra presque, et les deux formats devraient continuer à évoluer en conservant un niveau de qualité similaire
Avec des réglages de qualité réalistes, JXL offre un meilleur taux de compression ainsi qu’un encodage et un décodage plus rapides
En plus, il prend en charge le progressive decoding
AV2 pourra peut-être le rattraper, mais pour l’instant je pense que JXL est très largement devant
Ce réexamen semble lié à cette décision de l’époque
L’iPhone utilise HEIF
Encoder des images en haute résolution semblait nécessiter jusqu’à une RAM de niveau téraoctet
J’ai été surpris par l’état du codebase, et beaucoup d’options ne fonctionnaient pas correctement
Le fait de réessayer avec jxl-rs est positif, mais comme ce sont les mêmes développeurs qui y participent, je reste prudent
Il est probable que Chromium utilise le crate jxl-rs pour la fonctionnalité JPEG XL
Ils semblent sans doute attendre qu’il soit suffisamment stabilisé avant de l’intégrer
L’issue correspondante est consultable ici
Ils avaient fermé l’issue malgré l’opposition des utilisateurs, et ne l’ont rouverte que récemment
C’est peut-être lié à des problèmes de relations publiques ou à des frustrations internes
Si ça avance bien aujourd’hui, c’est peut-être aussi un coup de chance
J’ai regardé l’implémentation de référence (C++) de JPEG XL, et il y a encore deux ans la qualité du code n’était pas bonne
Cela donnait l’impression qu’il pouvait y avoir des problèmes de sécurité
Une version Rust est en cours de développement, et Google prévoit aussi de remplacer progressivement tous les décodeurs de Chromium par des implémentations Rust
Ce n’est pas un problème propre à JPEG XL
La résolution maximale de JPEG XL est de 1,073,741,823 × 1,073,741,824, ce qui permet de représenter des images ultra-haute résolution atteignant des centaines de pétaoctets
En pratique, même après compression, on reste à des dizaines à des centaines de PB
Si l’on peut définir une image aussi gigantesque dans un petit nombre d’octets, cela pourrait aussi devenir un vecteur d’attaque DOS
J’ai essayé de convertir ça en feuilles A4, mais le calculateur Gemini a confondu les unités et a donné un résultat absurde
Recueil d’anciennes discussions HN
Chromium Team Re-Opens JPEG XL Feature Ticket
FSF Slams Google over Dropping JPEG-XL in Chrome
Google set to deprecate JPEG XL support in Chrome 110
Chromium jpegxl issue closed as won't fix
J’utilise .avif depuis plusieurs années
Ce n’est pas parfait, mais je le trouve bien meilleur que .jpg ou .png
J’ai aussi envisagé .webp et jpeg-xl, mais au final je suis satisfait de .avif
En revanche, je n’aime pas que Google dicte de fait les standards du Web
Il n’est pas souhaitable qu’une entreprise commerciale contrôle l’écosystème numérique
jpegli GitHub
Avec de bons réglages de quasi-sans-perte visuelle, AVIF peut parfois être plus petit que jpegli, mais en moyenne jpegli est plus efficace
Vidéo liée : lien YouTube
Ce n’est pas « Google dans son ensemble » qui a supprimé JXL, mais l’équipe Chrome
JXL a été conçu par Jyrki Alakuijala du laboratoire Google Zurich, qui ne fait pas partie de l’équipe Chrome mais de Google Research
L’équipe Chrome a une culture fermée centrée sur Mountain View
Le fait qu’il ait créé jpegli après l’abandon de JpegXL relevait aussi d’une forme de réaction
Il semble que JXL ait été retardé parce que sa dépendance à de nombreux composants multithreadés en C++ pouvait élargir la surface d’attaque de sécurité
Mozilla comme Google préfèrent une implémentation Rust pour éviter cela
Le standard lui-même est clairement une amélioration par rapport aux formats existants
Le binaire est aussi bien plus petit qu’AVIF, et la spécification est beaucoup plus concise
Les fichiers RAW de l’iPhone 17 Pro seraient compressés en JPEG XL