Casa > C > Como A Tela Do Macbook Retina Interpreta Os Vídeos Hd?

Como a tela do MacBook Retina interpreta os vídeos HD?

A resposta curta é que, em um video player bem escrito ou fornecido pelo sistema, o vídeo será renderizado pixel por pixel em 1920x1080, e depois será redimensionado para caber no seu display's nativo 2560x1600; em um aplicativo ingenuamente escrito, ele será primeiro redimensionado e efetivo 3840x2160 (!!!), depois redimensionado para caber no seu display.

A resposta longa depende em grande parte do aplicativo que você usa para reproduzir o vídeo. As aplicações no OS X têm a capacidade de endereçar a resolução total de 2560x1600 da tela, mas como ter que responder por múltiplas densidades de pixels seria desnecessariamente pesado para a maioria das aplicações, o OS faz alguns "truques" para tornar as coisas o mais perfeitas possível para os desenvolvedores de aplicações - coisas como renderizar texto automaticamente em 2x, usando versões de alta resolução de imagens de multi-representação (como ICNS, TIFF, etc.).) ou vetores (como PDFs) onde disponíveis, mas de outra forma apenas "pixel-doubling" tudo o mais que ele faz' não sabe como fazer um caso especial. O resultado é que o desenvolvedor só precisa pensar nas coisas na resolução de 1280x800, e o sistema operacional fará o seu melhor para fazer tudo o que puder parecer ótimo também em 1280x800@2x.

Agora, para o bem da discussão, deixe's imaginar que qualquer que seja a aplicação que você use, a janela na tela é dimensionada para a resolução do vídeo (você está't em modo tela cheia). Também vou usar a convenção de distinguir entre "pontos" (ou "pt", as dimensões de espaço do usuário na tela) e pixels (px, dimensões de espaço duro da tela). O MacBook Pro de 13" com tela Retina tem uma resolução padrão de 1280x800pt, apoiada por 2560x1600px. A resolução do vídeo também é representada em termos de pixels, mas esses pixels são relativos: eles são mapeados em pontos, o que determina quantos pixels de hardware são usados para exibi-lo.

A resolução do vídeo é 1920x1080 pixels, caixa fechada. That's 1080p.

So, uma aplicação ingenuamente escrita que faz a sua própria renderização de vídeo (e não't usa AVFoundation ou qualquer uma das bibliotecas do sistema) provavelmente acabará com um vídeo que fica pixel-doubled: neste caso, a aplicação não estará ciente da densidade da tela, e então renderizará o vídeo como se fosse 1px = 1pt. Assim, a janela ocupará 1920x1080pt na tela (que é maior que a tela), mas será (seria) apoiada por 3840x2160 pixels de hardware - em outras palavras, cada pixel do vídeo seria desenhado por 4 pixels de hardware, o que resultaria em um vídeo desfocado, mesmo que ele's seja maior do que pode caber na tela.

No entanto, uma aplicação inteligentemente escrita, ou uma aplicação ingenuamente escrita que usa uma biblioteca do sistema para reproduzir o vídeo (que provavelmente é a maioria deles) levará em conta este pixel duplicando, e o desabilitará ao renderizar os quadros do vídeo. Isso significa que, na resolução nativa, 1px = 0,5pt, então a janela de vídeo ocuparia apenas 960x540pt na tela, o que se encaixa muito bem. Se o seu reprodutor de vídeo exibe o vídeo neste tamanho na tela, então cada pixel de vídeo é apoiado por exatamente um pixel de hardware, então você está vendo o vídeo com resolução verdadeiramente nativa. (Note que isso é diferente de apenas "redimensionar" a janela no primeiro exemplo para 960x540pt, porque a aplicação não estará endereçando os pixels extras de hardware; isso seria apenas aumentar e diminuir o tamanho.)

Então deixe's assumir que você're assistindo o vídeo em tela cheia. A qualidade do vídeo que você're vê depende de quão bem a aplicação de reprodução do vídeo está escrita. Se ele's for feito "corretamente" (cenário 2), então o vídeo será primeiro renderizado em 960x540pt (mapeamento de 1:1 vídeo para hardware) e escalado para suas dimensões de tela's. Se ele's for mal feito (cenário 1), então o vídeo será primeiro renderizado no dobro do seu tamanho real em pontos (criando uma imagem difusa) e depois para baixo, amostrado para a sua tela's dimensões; sob esta circunstância, a tela precisa tomar algumas decisões sobre quais pixels descartar (e/ou usar antialiasing), e como o espaço de pixels é artificialmente inflado pelo up-scaling, é provável que isso produza uma imagem pior.

Basicamente, se você quiser assistir a um vídeo 1080p de resolução nativa, você'vai querer a) encontrar um bom reprodutor de vídeo que use bibliotecas do sistema, e b) assistir em modo de janela a 960x540. Qualquer outra configuração invoca algum escalonamento, e quanto escalonamento depende de quão bem escrito o aplicativo do video player está.

De Nalda Tullock

O que faria com que a minha subscrição Xbox Live Gold não funcionasse? :: Como hackear Monster Legends