VideoOut
O VideoOut registra os buffers de exibição do convidado e só conclui um flip depois que o callback de apresentação aceitou o quadro. A janela do anfitrião é uma swapchain Vulkan em 1080p SDR.
Notas do repositório até 10 de outubro de 2026
Registro e flips
O VideoOut guarda até dezesseis alocações de exibição registradas e quatro grupos de atributos. Ele publica o registro contíguo de dezesseis rótulos que a ABI do driver usa. Registrar, alterar e cancelar o registro são operações validadas. Um flip em branco do buffer -1, que os títulos usam durante a inicialização, é aceito.
Flips de CPU e flips de fim de pipe passam pelo backend vivo de buffer de comandos. Um flip normal só fica completo depois que o callback de apresentação aceita o quadro. A conclusão é entregue na fila de eventos do VideoOut com os dados de usuário de quem chamou. O filtro da fila é a mesma implementação de evento de borda de usuário que o kernel usa, e o identificador do registro é preservado.
O que o anfitrião apresenta
A janela do jogo é uma swapchain Vulkan. O VideoOut informa 1080p SDR. 120 Hz é informado como indisponível. A preferência padrão do jogo pede o modo de desempenho. A resolução interna permanece sob o controle do título: um jogo que renderiza em 4K ainda aloca alvos em 4K, e a swapchain apresenta o scanout que o título registrou.
SetFlip resolve o slot do VideoOut e o índice do buffer, seleciona o alvo em cache com o endereço convidado correspondente e publica o quadro. A taxa de flips pode ser mostrada no título da janela. O lançador guarda essa preferência, e uma execução pela linha de comando pode definir PS5_SHOW_FPS=1.
Filmes e o scanout
Filmes de introdução não contornam o VideoOut. O AvPlayer decodifica para buffers que pertencem ao título, e os shaders do próprio título, ou um scanout registrado, os apresentam. Asterix mantém o viewport de altura negativa do convidado como orientação do scanout, então a composição não sai de cabeça para baixo.
A ausência do carregador Vulkan, de um dispositivo de apresentação ou de uma janela é informada, e o título continua no caminho sem interface. O modo sem interface serve ao diagnóstico. Não é um segundo renderizador, mais rápido.
O que está implementado
- Até dezesseis buffers de exibição, quatro grupos de atributos e a ABI de dezesseis rótulos.
- Flips que só se concluem depois que o callback de apresentação aceita o quadro.
- Uma swapchain Vulkan que informa 1080p SDR, com 120 Hz deixado indisponível.
- Preferência pelo modo de desempenho por padrão, e um título de janela opcional com a taxa de flips.
O que ainda falta
- 120 Hz e uma swapchain HDR do anfitrião não são oferecidos.
- A resolução interna é aquilo que o título aloca.
- Sem um dispositivo de apresentação, o processo permanece sem interface.
Mecanismos relacionados
O que estas páginas descrevem