JPEG XL: sus inicios y su situación actual
(cloudinary.com)- JPEG XL es un formato de compresión de imágenes de próxima generación que comenzó a desarrollarse en 2018 combinando Google PIK y Cloudinary FUIF, y su bitstream quedó completamente congelado en 2020, con lo que el trabajo de estandarización quedó prácticamente concluido.
- Antes de que Chrome decidiera eliminarlo en 2022, hubo una expansión fluida en la que navegadores principales como Firefox y Chrome añadieron soporte experimental.
- Al anunciarse que toda la línea de productos de Apple, incluidos Safari 17, iOS y macOS, soportará JPEG XL, volvió a crecer el impulso para expandir el ecosistema.
- Cloudinary comparó JPEG XL, AVIF, WebP y mozjpeg mediante experimentos basados en el dataset CID22 y SSIMULACRA 2, analizando diferencias desde la perspectiva de alta calidad, alta compresión y velocidad.
- Se plantea que JPEG XL ofrece una ganancia adicional de compresión de 5 a 10% frente a AVIF y mantiene un nivel razonable de velocidad, por lo que hoy en promedio sería el mejor códec.
Los inicios de JPEG XL
- El comité JPEG lanzó una convocatoria para el estándar de compresión de imágenes de próxima generación y se presentaron 7 propuestas; el diseño de JPEG XL comenzó al combinar la tecnología de Google PIK y Cloudinary FUIF.
- Al unir las ventajas de ambos formatos, se creó una nueva estructura de códec que ofrece compresión de mayor calidad y eficiencia frente al JPEG tradicional.
- A finales de 2020 se congeló el bitstream y en marzo de 2022 fue aprobado oficialmente como estándar ISO (ISO/IEC 18181).
- En 2021, Chrome y Firefox añadieron soporte experimental mediante flags, y parecía que todo avanzaba bien.
- Cerca de Halloween de 2022, Chrome anunció sorpresivamente la eliminación del soporte, lo que provocó controversia.
- Desde Cloudinary señalaron varios problemas metodológicos en la forma en que Chrome realizó sus pruebas, pero no fueron tomados en cuenta.
- Fuera del entorno de navegadores, la adopción de JPEG XL siguió creciendo, sobre todo en herramientas de autoría como Serif Affinity, Adobe Camera Raw, GIMP y Krita.
El anuncio de Apple en la WWDC
- En la WWDC23, JPEG XL se incluyó oficialmente en la lista de novedades de Safari 17.
- Todo el ecosistema de Apple, incluidos iOS, iPadOS, macOS, watchOS y visionOS, añadió soporte para JXL.
- Incluso los desarrolladores de JPEG XL no esperaban que Safari fuera el primer navegador con soporte oficial, y este anuncio reforzó el impulso del ecosistema.
Experimento comparativo de códecs de imagen (CID22)
- Cloudinary construyó el gran dataset de imágenes CID22 (datos subjetivos en los que personas evaluaron directamente la calidad).
- La evaluación subjetiva es el criterio más preciso, pero como es difícil hacer experimentos a gran escala, con esa base se validaron métricas como SSIMULACRA 2.1 para usarlas en pruebas más amplias.
- En compresión de imágenes es importante equilibrar tasa de compresión, calidad visual y velocidad de codificación.
- Bajo condiciones de calidad equivalente, se compararon JPEG XL, AVIF, WebP y mozjpeg con SSIMULACRA 2 como referencia.
- Resultados principales
- WebP: en el rango de baja calidad reduce entre 25 y 35% frente a JPEG, pero en el rango de alta calidad la ganancia disminuye por la limitación de yuv420.
- Frente a mozjpeg, la ganancia adicional de WebP es de apenas 3 a 5%.
- AVIF: puede reducir entre 10 y 15% adicional frente a WebP y también soporta yuv444, por lo que mantiene una alta reducción incluso en el rango de alta calidad.
- Sin embargo, la velocidad de codificación es muy lenta (varias veces más lenta, de un solo dígito, con su configuración predeterminada).
- JPEG XL: logra una reducción adicional de compresión de 5 a 10% frente a AVIF, especialmente con una diferencia mayor en el rango de alta calidad.
- La velocidad de codificación también es más rápida que AVIF y ofrece un rendimiento utilizable en escenarios reales.
Uso de JPEG XL y soporte de Cloudinary
- Como Cloudinary participó en el desarrollo de JPEG XL, fue de los primeros en ofrecer soporte para JXL.
- Se puede convertir añadiendo
f_jxla la URL o cambiando la extensión a.jxl.
- Se puede convertir añadiendo
- Si se trata de un servicio con una alta proporción de usuarios de Safari, es válida la estrategia de servir primero JPEG XL y usar AVIF/WebP/JPEG como fallback para otros navegadores.
- Como el códec óptimo depende de cada imagen, Cloudinary está desarrollando una nueva versión de
f_auto,q_autobasada en IA.- Planean ofrecer una función que seleccione automáticamente el formato más adecuado para cada imagen.
1 comentarios
Opiniones de Hacker News