1 pontos por GN⁺ 2023-07-22 | 1 comentários | Compartilhar no WhatsApp
  • JPEG XL é um formato de compressão de imagem de próxima geração, cujo desenvolvimento começou em 2018 com a combinação do Google PIK e do Cloudinary FUIF, e o trabalho de padronização foi concluído quando o bitstream foi totalmente congelado em 2020
  • Antes de o Chrome decidir remover o suporte em 2022, houve um movimento de adoção constante, com navegadores importantes como Firefox e Chrome adicionando suporte experimental
  • Quando a Apple anunciou que toda a sua linha de produtos passaria a oferecer suporte a JPEG XL, incluindo Safari 17, iOS e macOS, o impulso para a expansão do ecossistema voltou a crescer
  • A Cloudinary comparou JPEG XL, AVIF, WebP, mozjpeg e outros em experimentos baseados no dataset CID22 e no SSIMULACRA 2, analisando diferenças sob as perspectivas de alta qualidade, alta compressão e velocidade
  • O JPEG XL oferece um ganho adicional de compressão de 5% a 10% em relação ao AVIF e mantém um nível razoável de velocidade, o que leva à avaliação de que hoje ele é, em média, o codec mais competente

O começo do JPEG XL

  • O comitê JPEG abriu uma chamada para o padrão de compressão de imagem de próxima geração, recebeu 7 propostas e iniciou o design do JPEG XL combinando as tecnologias do Google PIK e do Cloudinary FUIF
    • Ao unir as vantagens dos dois formatos, foi criada uma nova estrutura de codec que oferece compressão de alta qualidade e alta eficiência em relação ao JPEG tradicional
  • No fim de 2020, o bitstream foi congelado, e em março de 2022 ele foi oficialmente aprovado como padrão ISO (ISO/IEC 18181)
  • Em 2021, Chrome e Firefox adicionaram suporte experimental por meio de flags, e parecia que tudo caminhava bem
  • Por volta do Halloween de 2022, o Chrome anunciou de surpresa a remoção do suporte, gerando controvérsia
    • A Cloudinary apontou vários problemas metodológicos na forma como o Chrome conduziu os testes, mas isso não foi considerado
  • Fora do ambiente dos navegadores, a adoção do JPEG XL continuou crescendo, sobretudo em ferramentas de criação como Serif Affinity, Adobe Camera Raw, GIMP e Krita

O anúncio da Apple na WWDC

  • Na WWDC23, JPEG XL foi oficialmente incluído na lista de novos recursos do Safari 17
    • Todo o ecossistema da Apple, incluindo iOS, iPadOS, macOS, watchOS e visionOS, passou a adicionar suporte a JXL
  • Nem mesmo os desenvolvedores do JPEG XL esperavam que o Safari fosse o primeiro navegador com suporte oficial, e esse anúncio fortaleceu o momentum do ecossistema

Experimento comparativo entre codecs de imagem (CID22)

  • A Cloudinary construiu o grande dataset de imagens CID22 (dados subjetivos em que pessoas avaliaram diretamente a qualidade)
    • Como a avaliação subjetiva é o critério mais preciso, mas difícil de aplicar em experimentos de grande escala, ela foi usada como base para validar métricas como o SSIMULACRA 2.1 e aplicá-las em testes ampliados
  • Na compressão de imagens, é importante equilibrar taxa de compressão, qualidade visual e velocidade de codificação
    • Em condições de mesma qualidade, JPEG XL, AVIF, WebP e mozjpeg foram comparados com base no SSIMULACRA 2
  • Principais resultados
    • WebP: em faixas de baixa qualidade, reduz de 25% a 35% em relação ao JPEG, mas em faixas de alta qualidade o ganho diminui por causa da limitação do yuv420
    • Em relação ao mozjpeg, o ganho adicional do WebP é de apenas cerca de 3% a 5%
    • AVIF: consegue uma redução adicional de 10% a 15% em relação ao WebP e também oferece suporte a yuv444, mantendo alta taxa de redução mesmo em faixas de alta qualidade
      • Porém, a velocidade de codificação é muito lenta (várias vezes mais lenta, chegando à casa de um dígito, nas configurações padrão próprias)
    • JPEG XL: oferece mais 5% a 10% de redução de compressão em relação ao AVIF, com diferença especialmente grande nas faixas de alta qualidade
      • A velocidade de codificação também é mais rápida que a do AVIF e tem desempenho viável para uso real

Uso do JPEG XL e suporte da Cloudinary

  • Como a Cloudinary participou do desenvolvimento do JPEG XL, ela foi a primeira a oferecer suporte a JXL
    • É possível converter adicionando f_jxl à URL ou mudando a extensão para .jxl
  • Se o serviço tiver uma alta proporção de usuários do Safari, uma estratégia eficaz é priorizar JPEG XL e usar AVIF/WebP/JPEG como fallback para outros navegadores
  • Como o codec ideal varia de imagem para imagem, a Cloudinary está desenvolvendo uma nova versão do f_auto,q_auto baseada em IA
    • Ela deverá oferecer a função de selecionar automaticamente o formato mais adequado para cada imagem

1 comentários

 
GN⁺ 2023-07-22
Comentários do Hacker News
  • O MKV, um "formato de contêiner" estável para vídeo e áudio, continua existindo enquanto novas codificações de imagem exigem novos formatos de contêiner e extensões de arquivo.
  • Decodificadores AV como o libffmpeg suportam todos os formatos e codecs AV interessantes, permitindo suporte disseminado a novos codecs.
  • Não existe uma "biblioteca universal" para formatos de imagem + codec como existe com o libffmpeg.
  • Chrome e Edge agora suportam e exibem JXL no iOS 17.
  • O JPEG 2000 na prática não foi adotado, e o JPEG XL é apenas uma melhoria incremental.
  • Algumas pessoas não estão convencidas ao usar webp, avif ou jxl por causa do suporte limitado e da dificuldade de trabalhar com esses tipos de arquivo.
  • A adoção de novos formatos de imagem pode lembrar os primeiros tempos do JPEG.
  • Alguns usuários têm experiências diferentes com formatos de compressão de imagem como WEBP, AVIF e JPEG XL.
  • O interesse em AVIF e JPEG XL está crescendo por causa da vontade de publicar imagens com ampla gama de cores.
  • O ecossistema da Apple adotou HEIF, mas não vídeo AV1.
  • Alguns usuários gostariam que o formato BPG também fosse incluído além do JPEG XL.
  • JPEG XL é diferente de JPEG 2000 e JPEG XR.
  • O nome "JPEG XL" pode afetar seu sucesso.
  • Há uma proposta de usar JPEG XL como codec de imagem estática em um novo formato de vídeo baseado em AV1.