O que é JPEG XR?
JPEG XR é uma norma de compressão de imagens estáticas derivada do HD Photo para imagens de tons contínuos. Ela oferece codificação com e sem perdas, altas profundidades de bits, canais alfa e dados de alta faixa dinâmica.
Como JPEG XR funciona
JPEG XR é padronizado como ITU-T T.832 e ISO/IEC 29199-2 e se baseia em grande parte no formato HD Photo da Microsoft. Ele usa uma transformada sobreposta reversível baseada em lifting em macroblocos de 16×16, e o mesmo algoritmo serve para codificação com e sem perdas. O fluxo de código é organizado em bandas de frequência e blocos opcionais, o que permite a um decodificador produzir uma imagem de menor resolução ou uma região sem processar o arquivo inteiro. Os formatos de amostra vão muito além do JPEG de 8 bits: inteiros de 8 e 16 bits, ponto fixo e ponto flutuante de 16 e 32 bits, em organizações monocromáticas, RGB, CMYK e de n canais, com um plano alfa opcional. A codificação sem perdas abrange os formatos de 8 e 16 bits; para dados de ponto fixo e ponto flutuante de 32 bits, a norma informa que a compressão totalmente sem perdas não está disponível em geral. O arquivo .jxr usual é um contêiner baseado em tags, modelado nas estruturas TIFF e Exif, que contém o formato de pixels e metadados opcionais ao redor do fluxo de código.
Informações essenciais
- Um decodificador compatível com JPEG XR ainda pode rejeitar um arquivo específico. A norma define os perfis Sub-Baseline, Baseline, Main e Advanced, além de níveis, e seu registro de tipo de mídia alerta que um decodificador receptor pode não suportar todos eles. Os formatos de pixels com alfa e ponto flutuante aparecem primeiro no perfil Main, e a Microsoft documenta seu codec do Windows como compatível até o perfil Main e o nível 128. Um arquivo pode declarar seu perfil e nível em uma estrutura opcional; quando ela está ausente, a norma infere o perfil Advanced no nível mais alto, portanto um arquivo sem essa declaração precisa ser testado, em vez de presumido compatível. Compare o perfil, o nível e o formato de pixels dos seus arquivos com os limites do decodificador, em vez de verificar apenas o nome do codec.
- O contêiner
.jxrpode conter um perfil ICC, Exif e XMP em tags dedicadas, mas a norma permite essas tags sem exigir que os decodificadores as interpretem. Um fluxo de código sem contêiner, que o codificador do Windows também pode gravar em seu modo de somente fluxo, não tem nenhum metadado de contêiner. Verifique a preservação do perfil de cores e dos metadados separadamente da decodificação dos pixels. Preservar um perfil também não é o mesmo que interpretar as amostras corretamente: a orientação informativa sobre cores da norma diz que RGB de ponto fixo e ponto flutuante deve ser scRGB linear, enquanto RGB de inteiros sem sinal, sem perfil ou outras informações de cor, deve ser considerado sRGB. Portanto, produzir uma versão para a web a partir de amostras HDR envolve uma conversão de cores e de faixa, não apenas recodificar os mesmos números. - O tipo de mídia registrado é
image/jxr, com a extensão.jxr, e os arquivos com contêiner começam com os bytes49 49 BC. O Windows também usa.wdp, e seu decodificador aceita tanto JPEG XR quanto o formato HD Photo mais antigo, que, segundo a Microsoft, difere da norma em alguns aspectos. Portanto, a extensão, por si só, não informa qual dos dois formatos um arquivo contém.
Quando JPEG XR é importante
JPEG XR é relevante quando o codec integrado do Windows está disponível ou quando seus modos de alta profundidade de bits, HDR ou sem perdas são necessários. Entre os navegadores, apenas o Internet Explorer e o Microsoft Edge original, anterior ao Chromium, o decodificavam, portanto a distribuição pela web exige conversão para outro formato.
Fontes
- Rec. ITU-T T.832 (06/2019) | ISO/IEC 29199-2: especificação de codificação de imagens JPEG XR, anexos A, B, C e E
- Registro de tipo de mídia da IANA: image/jxr
- Comitê JPEG: visão geral do JPEG XR
- Microsoft Learn: visão geral do codec JPEG XR (Windows Imaging Component)
- Dados de compatibilidade do Can I use: formato de imagem JPEG XR