Compartilhe

O Ice Unverse é um dos leakers do mundo Samsung mais populares da internet. E ele compartilhou no seu perfil do Twitter uma imagem peculiar: a foto de uma paisagem que, ao ser configurada como fundo de tela, faz com que os smartphones da Samsung e alguns modelos do Google Pixel travem por completo.

Aparentemente, o problema está no espaço de cores utilizado pela foto e uma falha do Android 10. Nesse post, explicamos o que acontece com este fundo de tela e como solucionar o problema.

 

 

 

Não… não é sRGB

 

 

Como padrão, o Android 10 usa o espaço de cores sRGB (padrão RGB, criado pela HP e Microsoft) para reprodução de imagens compatíveis com esse formato de espaçamento. O problema é que essa imagem que trava os dispositivos usa o espaço de cores RGB, e RGB não é a mesma coisa que sRGB, já que tem mais cores.

Quando configuramos a imagem como fundo de tela, o sistema operacional invoca a função “doColorManagement” do “ColorManagementProxy”. A função comprova se o dispositivo suporta esse espaço de cores.

O que acontece quando a imagem é RGB? Normalmente, o sistema operacional a converte para sRGB, mas o Android 10 não faz isso. Por isso, um Google Pixel 3 XL com Android 10 para quando essa imagem vira o fundo de tela. O mesmo não acontece com um Google Pixel 4 XL com o beta do Android 11, que consegue converter o espaço de cores.

 

 

Aqui, o perfil de cores Google Skia tem um papel importante. Ele usa cores pré-multiplicados, com cores que se multiplicam pelo canal alfa (que define opacidade). Porém, a maioria dos formatos de arquivos gráficos assumem alfas pós-multiplicados (um valor de cor e uma opacidade separada dessa cor).

Por isso, é preciso converter corretamente entre os dois formatos na hora de ler e escrever nesses sistemas. O problema é que o Android processa a imagem sem convertê-la, o que faz com que o SystemUI entre em uma sequência de falhas, deixando o dispositivo inutilizável.

 

 

Essa falha certamente vai se reproduzir em outras imagens que usam o mesmo perfil de cor. A solução para o problema? Pouco pode ser feito no sistema operacional, mas no caso do arquivo existe uma solução simples: a conversão do perfil de cor.

Basta abrir um programa de edição de imagens e converter o perfil para sRGB. Então, exporte a imagem como um arquivo .JPEG ou .PNG, e pronto: podemos usar a imagem sem maiores problemas.

A Samsung já foi notificada sobre a falha no meio de maio, e o problema já estaria resolvido nos seus smartphones. A maioria dos usuários afetados usa dispositivos da marca sul-coreana, de modo que é uma questão de esperar para que a atualização pertinente seja liberada.


Compartilhe