O FPS cai ao reproduzir vídeo em segundo plano

O FPS cai ao reproduzir vídeo em segundo plano

Estou tentando entender por que sinto quedas de FPS em jogos exigentes quando um vídeo está sendo reproduzido em segundo plano e como consertar isso. Minha configuração específica (veja as especificações na parte inferior): dois monitores no modo desktop estendido, o monitor principal conectado via DisplayPort a uma placa de vídeo AMD R9 390, o outro via DVI alternativamente à saída gráfica Intel HD 4600 on-die ou para saída DVI do R9 390.

Vou demonstrar o problema com o jogo Witcher 3, mas o mesmo problema ocorre com pelo menos um outro jogo que experimentei - World of Tanks (que é onde o problema realmente importa, já que às vezes coloco músicas do YouTube durante o jogo). Em todos os experimentos abaixo, executo Witcher 3 em meu monitor principal em modo de janela de tela cheia e meço o FPS nele com FRAPS. Para garantir FPS estável, coloquei o jogo em pausa (pressionando ESC). Também defini a afinidade do processo Witcher 3 para os 3 primeiros núcleos e defini a afinidade de outros aplicativos para o 4º núcleo. A carga da CPU permaneceu estável nos núcleos 1-3 durante os testes em 45-50%.

Teste de linha de base quando o jogo não está em execução: a carga da CPU está em ~0% nos núcleos 1-3 e em ~5% no núcleo 4. Teste de linha de base quando o jogo está em execução, mas nenhum vídeo sendo reproduzido em paralelo: 58 FPS estáveis, CPU carga: ~10% no núcleo 4.

Primeiro lote de testes: o monitor secundário está conectado ao R9 390.

  1. Vídeo HTML5 do YouTube em 1080p em execução no monitor secundário (no Chrome ou Firefox): ~48 FPS, carga da CPU: ~50% no núcleo 4.
  2. O mesmo vídeo do YouTube rodando no monitor principal do jogo: mesmos resultados de (1).
  3. SMPlayer reproduzindo um vídeo AVC 1024x426 no monitor secundário: ~48 FPS, carga de CPU: ~25% no núcleo 4.

Segundo lote de testes: o monitor secundário está conectado ao HD 4600.

  1. Vídeo HTML5 do YouTube em 1080p em execução no monitor secundário (no Chrome ou Firefox): ~44 FPS, carga da CPU: ~50% no núcleo 4.
  2. O mesmo vídeo do YouTube rodando no monitor principal do jogo: ~48 FPS, carga da CPU: ~50% no núcleo 4.
  3. SMPlayer reproduzindo um vídeo AVC 1024x426 no monitor secundário: ~50 FPS, carga de CPU: ~25% no núcleo 4.

Agora, uma coisa que notei é que o desempenho varia dependendo se a janela do jogo está focada ou não. Os benchmarks acima são fornecidos para o caso em que a janela do jogo está focada. Se a janela do jogo estiver focada, vejo uma nítida instabilidade na reprodução do vídeo (tanto no YouTube quanto no SMPlayer). Se outra janela estiver focada, a reprodução do vídeo será suave, mas o FPS do jogo cairá mais.

Minhas especificações: Windows 10 x64, Intel i5-4690K, Gigabyte Z97-D3H, 8 Gb de RAM, placa de vídeo R9 390. O monitor primário (conectado ao R9 390) funciona em 1920x1200, o secundário em 1600x1200.

EDITAR: peguei um YouTube só de músicavídeoe tentei reproduzi-lo em várias resoluções de 240p a 1080p. O FPS caiu gradualmente de 58 para 48 FPS conforme aumentava a resolução.

informação relacionada