Para referência, meu computador é 9900K, GTX 1070. A reprodução é feita no Chrome. Codec listado como vp09.00.51.08.01.01.01.01 (315) / opus (251)
, embora eu não saiba se isso pode variar.
Encontrei um vídeo no YouTube com uma qualidade absurdamente alta:
No entanto, quando mudo para a qualidade 8K60, as estatísticas dizem que caio cerca de 1/3 de todos os quadros. No entanto, parece bastante suave, com engates de quadro perceptíveis ocasionais. A carga da CPU se estabiliza em aproximadamente 60%. De acordo com o gerenciador de tarefas, não há decodificação da GPU e os níveis de atividade da GPU estão em ~20% no gráfico 3D.
Além disso, há este vídeo:
The Daily Dweebs - 8K UHD 3D estereoscópico pelo projeto Blender.
Também é 8K, porém 24 FPS (modo 2d). Nele, não perco nenhum quadro, mas o vídeo é gaguejante e parece reproduzir a cerca de 10 qps. A atividade da GPU no gráfico 3D é de aproximadamente 30% desta vez e a CPU para em aproximadamente 30% também.
E este vídeo, por exemplo: Ghost Towns em 8K (FUHD) em 8K24 é reproduzido sem perda de quadros ou problemas perceptíveis com 30% de CPU e 11% de utilização de GPU.
Qual é o gargalo do sistema? Como é que a filmagem de 60FPS parece suave, mas cai uma tonelada de quadros, mas a filmagem de 24 FPS é instável, mas nenhum quadro é descartado? O que é preciso para reproduzir 8K? Como a reprodução acontece de qualquer maneira?
Editar: Para completar, observe que o YouTube pode exibir muitas estatísticas técnicas de reprodução quando você clica com o botão direito do mouse no vídeo e escolhe a opção "Estatísticas para nerds".
Edite para adicionar informações solicitadas nos comentários:
- Sim, meu monitor é G-Sync.
- Decodifique vp9 profile0 até 8192x8192 pixels
Isso depende do codec usado para codificar essa filmagem de 8K.
Alguns dos codecs comumente usados agora para 8K seriam:
Todos os vídeos do YouTube que você vinculou relatam a seguinte string de codec:
vp09.00.51.08.01.01.01.01 (272) / opus (251)
O Google é um dos principais contribuintes para o desenvolvimento do codec VP9 e, portanto, o YouTube prefere transmitir essa codificação para vídeos de 8K. ( Isso economiza muita largura de banda em H.265 )
Meu melhor palpite para o que essa
vp09.00
primeira parte significa é que é VP9 Profile 0, que é subamostragem de croma de 8 bits e 4:2:0.Para reproduzir vídeos 8K sem problemas, você precisará de uma CPU muito rápida para decodificação de software ou de uma GPU com suporte para decodificação acelerada por hardware de um desses codecs.
Para Decodificação de Software:
Bibliotecas como FFmpeg ou libvpx fornecem os meios para decodificar vídeos, independentemente dos recursos de hardware, portanto, uma CPU suficientemente rápida é uma maneira de reproduzir vídeos 8K. 8K é uma taxa de bits muito alta (até 240 mbps), então talvez o i9-9900K ainda não seja rápido o suficiente para decodificar tantos dados por segundo sem quedas de quadros.
Para decodificação de hardware:
Você precisará de uma GPU que suporte resolução 8K e tenha um decodificador rápido para o codec usado pelo vídeo.
De acordo com o WikiChip , o Intel UHD 630 Graphics em seu i9-9900K só pode decodificar qualquer um desses codecs com resolução máxima de 4K. Não será útil para vídeos 8K, mas é definitivamente um acelerador de hardware ideal para conteúdo 4K usando os codecs mais recentes.
Sua GTX 1070 pode decodificar uma resolução máxima de 8K, mas seu suporte para codecs que podem ser de 8K é limitado. De acordo com a matriz de suporte de GPU de codificação e decodificação
de vídeo da NVIDIA, sua GTX1070 só pode decodificar VP9 em 8 bits ou H.265 com subamostragem cromática 4:2:0.
Isso explica por que sua
chrome://gpu/
página exibe suporte para "Decodificar vp9 profile0 até 8192x8192 pixels".Como todos os links do YouTube que você testou são ( provavelmente ) vídeos VP9 Profile 0, a GPU está sendo utilizada pelo Chrome para reproduzir esses vídeos.
Isso provavelmente se resume à magnitude do vídeo 8K.
É provável que o decodificador de vídeo na GPU esteja atingindo seu desempenho potencial máximo, já que o uso da CPU e da GPU ainda não está em 100%. Também não tenho certeza se a NVIDIA já disse que 8K a 60hz seria ideal na GTX 1070, apenas que é compatível .Veja atualização abaixo...
Não consigo explicar isso, mas talvez seja possível que os vídeos 3D sejam transmitidos com os dados estéreo completos e o player os exiba como 2D com processamento local. Isso levaria a mais sobrecarga da CPU.Atualizar:
Eu testei aquele vídeo 3D na minha GTX 1070 e apenas 2 quadros caíram em 1136 quadros (52s), a reprodução também foi muito suave. Minha CPU é um Ryzen 5 3600X, então de forma alguma seu i9-9900K deve ser o gargalo. Verifique se você está usando a versão mais recente dos drivers de vídeo e do Chrome. É possível que a versão do Windows 10 também afete isso (estou usando o 1809 Pro).
Para uma placa Nvidia, parece que a decodificação de hardware de vídeo 8K requer seu PureVideo
Feature set H
ou superior:Isso o coloca na faixa de placas gráficas 20xx e 16xx e 10xx. O seu deve, pelo menos, ser capaz de decodificar vídeo 8k h.265 .
Pode ser que 8k VP9 não seja suportado na decodificação de hardware ou que o vídeo esteja usando profundidade de cor de 12 bits (Principal 4:4:4 12) e, como resultado, requer uma placa gráfica 20xx ou 16xx mais recente. A Wikipedia não tem detalhes sobre o que está naquele decodificador de vídeo (
Feature set J
). É provável que estenda o suporte a 8K e que esta seja a peça que faltava.Primeiro, tente obter um vídeo h.265 "padrão", em vez de VP9, e veja se funciona. Não estou 100% convencido de que a única amostra 8K@30 naquele site (link do youtube) esteja usando o decodificador de hardware no 1070. Ele está usando uma quantidade significativa de CPU (~ 70%) e ~ 30% GPU, mas apenas "3D", portanto, pode estar apenas empurrando pixels e dimensionando, mas não decodificando o hardware completo.
Não consigo encontrar facilmente nenhum vídeo 8k60 para download, mas não gosto de navegadores da Web como bancos de teste para suporte a vídeo.
Ignorando o tempo de descompressão, a taxa de bits para vídeo é aproximadamente a largura vezes a altura vezes (tamanho de armazenamento da representação numérica em pixels para um quadro) vezes (número de canais de cores) vezes a taxa de quadros.
Portanto, para RGB 8bpp, um px é um byte e 8k seria:
7680 bytes × 4320 bytes x 3 canais de cor x 60 fps x 8 bits por byte / 1024 para Kbit / 1024 para Mbit / 1024 para Gbit
Chega a cerca de 45 Gbps ou 8 GBps