Subamostragem de croma é uma forma de economizar espaço em uma imagem ou vídeo. O arquivo mantém os detalhes de brilho de cada pixel, mas registra os detalhes de cor apenas de alguns deles, porque o olho humano mal percebe a diferença.
Onde você encontra e de onde vem
A subamostragem de croma é usada em vídeo, em imagens digitais e em televisão colorida, e afeta as informações visuais exibidas neles. Na prática, você a encontra em fotos JPEG e em praticamente todos os arquivos de vídeo, qualquer que seja o contêiner: MP4, MOV, AVI, MKV.
Ela só funciona se o arquivo mantiver brilho e cor separados. Em vez de armazenar vermelho, verde e azul para cada pixel, esses formatos armazenam a luma, o brilho, separada da croma, a cor, como dois componentes normalmente escritos Cb e Cr. A subamostragem atua apenas na croma e deixa a luma intacta. A escolha é feita por quem codificou o arquivo: a câmera ou o celular, o preset de exportação de um editor de vídeo, um gravador de tela ou o programa que salvou o JPEG. Um relatório pode apresentá-la como YCbCr4:2:0 (2 2) para uma foto ou como um formato de pixel como yuv420p para um stream de vídeo. São duas formas de escrever a mesma coisa.
Lendo a notação
O valor normalmente é exibido como YCbCr seguido de três números, e esses números descrevem um bloco de pixels com quatro de largura e dois de altura. O primeiro número é a largura desse bloco, a referência de luma, que não é afetada pela subamostragem e por isso quase sempre é 4. O segundo indica quantas amostras de cor são feitas na linha superior do bloco, e o terceiro quantas na linha inferior, em que 0 significa que a linha de baixo simplesmente reutiliza a cor da linha de cima.
4:4:4- uma amostra de cor por pixel, sem subamostragem4:2:2- cor com metade da resolução horizontal4:2:0- cor com metade da resolução horizontal e metade da resolução vertical, um quarto das amostras de cor e, de longe, a configuração mais comum em fotos e vídeos de consumo4:1:1- cor com um quarto da resolução horizontal
Por que isso é importante para o seu arquivo
O ganho está no tamanho e na largura de banda. Menos amostras de cor significam menos bytes para o mesmo quadro, o que economiza espaço de armazenamento e torna o envio, o streaming e a transmissão mais baratos. É por isso que câmeras e serviços de streaming costumam usar 4:2:0.
O custo geralmente é invisível, porque o olho é muito menos sensível a detalhes finos de cor do que a contrastes finos de brilho. Onde isso aparece é em bordas de cor dura e saturada: texto vermelho ou azul sobre fundo escuro, ilustrações com linhas finas coloridas e gravações de tela de interfaces, que podem ganhar um leve contorno colorido. Trabalhos com cor crítica têm o mesmo problema por outro motivo. Recorte de chroma key em fundo verde e correções de cor intensas atuam diretamente nas informações de cor, por isso eles precisam de 4:2:2 ou 4:4:4.
Para arquivamento, lembre que a subamostragem é destrutiva e unidirecional. Converter um arquivo 4:2:0 para 4:4:4 depois gera um arquivo maior, não traz de volta as amostras de cor descartadas. O campo descreve apenas a codificação e não contém nada pessoal.