Partilhar via


Obtendo bons resultados com o codec de tela do Windows Media Video 9

[A funcionalidade associada a esta página, Windows Media Format 11 SDK, é uma funcionalidade herdada. Foi substituído por Source Reader e Sink Writer. do Source Reader e Sink Writer foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda vivamente que o novo código utilize Leitor de Fonte e Gravador de Destino em vez de SDK do Windows Media Format 11, sempre que possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

O codec de ecrã do Windows Media Video 9 foi concebido para produzir vídeo altamente comprimido para captura de ecrã. Porque a maior parte da necessidade de captura de tela envolve imagens bastante simples e estáticas, os altos níveis de compressão alcançados geralmente não significam um grande sacrifício na qualidade da imagem. No entanto, cada captura de tela é diferente, e a qualidade de imagem resultante pode variar consideravelmente dependendo das circunstâncias.

A melhor maneira de determinar as configurações de perfil para uma sessão de codec de tela é codificar um arquivo de teste usando um fluxo de taxa de bits variável baseado em qualidade. Defina a qualidade para o valor desejado e codifique uma captura de tela como se estivesse gravando o arquivo final. Quando o arquivo for gravado, reproduza-o usando o objeto leitor assíncrono, fazendo chamadas regulares para IWMReaderAdvanced::GetStatistics. Ao monitorar o valor do dwBandwidth membro da estrutura de WM_READER_STATISTICS para cada chamada, você pode determinar a taxa de bits aproximada necessária para alcançar a qualidade desejada. Em seguida, você pode usar essa taxa de bits para codificação de taxa de bits constante.

Se você descobrir que a qualidade desejada requer uma taxa de bits maior do que a que você pode usar para seu cenário de entrega, você pode tentar as seguintes técnicas para obter mais eficiência do codec.

  • Use uma resolução menor para a captura de tela. Capturar uma resolução de tela maior do que você precisa também pode criar confusão para o espectador, apresentando mais informações do que o necessário.
  • Use menos gráficos na captura de tela. O codec de tela do Windows Media Video 9 é otimizado para codificar primitivos do Windows e texto com alta qualidade. Normalmente, os problemas ocorrem devido a gráficos bitmapped, que geralmente contêm milhares de cores individuais. Quanto menos bitmaps estiverem na tela quando você capturar, melhores serão seus resultados. Se não for possível eliminar gráficos da captura de tela, há várias maneiras de minimizar o impacto de um bitmap na qualidade da imagem:
    • Reduza o tamanho do gráfico.
    • Reduza o número de gráficos individuais que aparecem na tela simultaneamente.
    • Reduza a quantidade de movimento do gráfico. Por exemplo, se o gráfico estiver em uma janela, mantenha a janela o mais estacionária possível.
    • Evite mover o ponteiro do rato sobre o gráfico ou arrastar janelas ou outros elementos sobre o gráfico.
  • Use uma taxa de quadros mais lenta. As capturas de tela muitas vezes podem ser eficazes em taxas de quadros muito baixas (às vezes tão baixas quanto 4 ou 5 quadros por segundo).
  • Reduza a taxa de bits do áudio que o acompanha.

Além disso, o codec não suporta o redimensionamento do retângulo de vídeo. Em outras palavras, se você tentar usar o codec para codificar uma tela de 800 x 600 em um retângulo de vídeo de 640 x 480, o vídeo resultante terá artefatos significativos que podem tornar grande parte do texto na tela ilegível.

Configurando fluxos de captura de tela

Configurando fluxos