Compartilhar via


Gerenciador de Portas de Vídeo

[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na 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 Captura de Áudio/Vídeo no 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 VPM (Filtro do Gerenciador de Portas de Vídeo) permite que o Filtro de Renderizador de Combinação de Vídeo 7 (VMR-7) funcione com dispositivos de captura de vídeo ou decodificadores de hardware que usam uma porta de vídeo. Uma porta de vídeo é uma conexão de hardware direta com o chip gráfico. Ele permite que o vídeo seja transferido diretamente para o chip gráfico sem passar pelo barramento do sistema.

Observação

O Gerenciador de Portas de Vídeo não é compatível com a VMR-9, pois o VMR-9 não dá suporte a portas de vídeo.

 

Rótulo Valor
Filtrar Interfaces IAMVideoDecimationProperties, IBaseFilter, IKsPropertySet, IQualProp, IVPManager
Tipos de mídia de pino de entrada MEDIATYPE_Video, MEDIASUBTYPE_VPVideo ou MEDIASUBTYPE_VPVBI, FORMAT_None
Interfaces de pino de entrada IKsPin, IKsPropertySet, IMemInputPin, IPin, IPinConnection, IQualityControl
Tipos de mídia de pino de saída MEDIATYPE_Video, FORMAT_VideoInfo2
Interfaces de pino de saída IPin, IQualityControl
Filtrar CLSID CLSID_VideoPortManager
Mérito MERIT_NORMAL
Categoria de Filtro CLSID_LegacyAmFilterCategory

 

Comentários

O Gerenciador de Portas de Vídeo combina a funcionalidade de porta de vídeo do Filtro de Mixer de Sobreposição e a funcionalidade do Alocador de Superfície da VBI. O VPM aloca portas e superfícies de vídeo e sincroniza a captura de dados da porta de vídeo. Ele permite a captura baseada em porta de vídeo independente da renderização. Se a visualização for desejada, o VPM coordenará com a VMR-7 para exibir dados de porta de vídeo capturados. Quando uma porta de vídeo está presente no sistema, o filtro de captura requer buffers adicionais para extrair dados de VBI do fluxo de vídeo. Esses buffers são fornecidos pelo VPM. Depois que o filtro de captura extrai os dados da VBI, ele os entrega em um pin separado para filtros como o Decodificador CC. A ilustração a seguir mostra o VPM e suas conexões em um grafo de filtro.

segmento de grafo de filtro do gerenciador de portas de vídeo

O Construtor de Gráficos de DVD adiciona o VPM ao grafo de filtro automaticamente quando uma porta de vídeo é detectada no sistema. Depois de adicionado ao grafo, o VPM usa um objeto DirectDraw fornecido pelo Renderizador de Combinação de Vídeo para alocar duas ou três superfícies. Essas superfícies recebem os quadros digitalizados do filtro de captura upstream. Em resposta às notificações de evento do modo de usuário enviadas quando os dados estão presentes na superfície, o VPM executa um blit automático para uma superfície offscreen fornecida pela VMR.

O fato de o VPM usar várias superfícies para seus buffers de entrada significa que ele requer mais VRAM do que a implementação anterior da porta de vídeo DirectShow. O blit extra do VPM para a VMR-7 requer largura de banda de memória de vídeo adicional. E como a inversão automática de hardware não é mais usada, há um potencial teórico para quadros descartados, mas as evidências empíricas sugerem que isso não ocorre.

Filtros do DirectShow

IVPManager Interface