Sobre a renderização de vídeo no DirectShow

[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation em vez de DirectShow, quando 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 DirectShow fornece vários filtros que renderizam vídeo:

  • Filtro do Renderizador de Vídeo . Esse filtro está disponível para todas as plataformas que dão suporte ao DirectX e não tem requisitos de sistema específicos. O Renderizador de Vídeo usa o DirectDraw sempre que possível para renderizar o vídeo; caso contrário, ele usa GDI. Esse filtro é o renderizador de vídeo padrão em plataformas anteriores ao Windows XP.
  • Filtro do Renderizador de Combinação de Vídeo 7 (VMR-7). A VMR-7 está disponível no Windows XP, onde é o renderizador de vídeo padrão. A VMR-7 sempre usa o DirectDraw 7 para renderização. Ele fornece muitos recursos poderosos que não estão disponíveis no filtro mais antigo do Renderizador de Vídeo, incluindo um modelo de plug-in em que o aplicativo controla as superfícies do DirectDraw usadas para renderização.
  • Filtro do Renderizador de Combinação de Vídeo 9 (VMR-9). A VMR-9 é uma versão mais recente do Renderizador de Combinação de Vídeos que usa o Direct3D 9 para renderização. Ele está disponível para todas as plataformas que dão suporte ao DirectX. No entanto, não é o renderizador padrão porque ele tem requisitos de sistema mais altos do que o filtro do Renderizador de Vídeo.
  • O filtro Do Mixer de Sobreposição foi projetado especificamente para reprodução de DVD e vídeo de transmissão. Ele também dá suporte a VPEs (Extensões de Porta de Vídeo), permitindo que ele funcione com decodificadores MPEG-2 de hardware ou sintonizadores de TV analógicos que enviam vídeo diretamente para os elementos gráficos cartão.
  • O filtro EVR ( Renderizador de Vídeo Avançado ) está disponível a partir do Windows Vista. Ele oferece melhor desempenho de vídeo em comparação com renderizadores de vídeo anteriores, especialmente quando a composição da área de trabalho do Windows Vista está habilitada.

Em geral, o EVR é preferencial para aplicativos direcionados ao Windows Vista ou posterior, e a VMR-9 é preferencial para aplicativos em execução em versões anteriores do Windows. Para obter mais informações sobre como usar os filtros VMR-7 e VMR-9, consulte Usando o Renderizador de Combinação de Vídeos.

Modo com janelas e modo sem janelas

Um renderizador de vídeo DirectShow pode operar no modo com janelas ou no modo sem janelas .

  • No modo de janela, o renderizador cria sua própria janela para exibir o vídeo. Normalmente, você fará dessa janela o filho de uma janela do aplicativo. Para obter mais informações, consulte Usando o modo de janela.
  • No modo sem janelas, o renderizador desenha o vídeo diretamente em uma janela do aplicativo. Ele não cria sua própria janela. Para obter mais informações sobre esse modo, consulte Usando o modo sem janelas.

O filtro Renderizador de Vídeo dá suporte apenas ao modo em janelas. Os filtros VMR-7 e VMR-9 dão suporte a ambos os modos. O padrão é o modo em janelas para compatibilidade com versões anteriores, mas o modo sem janelas é preferencial. O EVR dá suporte apenas ao modo sem janelas.

Renderização de vídeo