Compartilhar via


Exemplo de filtros de origem por push

[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.]

Descrição

Este exemplo consiste em um conjunto de três filtros de origem que fornecem os seguintes dados de origem como um fluxo de vídeo:

  • CPushSourceBitmap: bitmap único (carregado do diretório atual)
  • CPushSourceBitmapSet: conjunto de bitmaps (carregado do diretório atual)
  • CPushSourceDesktop: cópia da imagem da área de trabalho atual (somente GDI)

Uso

Para usar um filtro, carregue-o no GraphEdit e renderize seu pino de saída. Isso conectará um renderizador de vídeo (e possivelmente um filtro conversor de espaço de cor) e permitirá que você exiba a saída. Se você quiser renderizar a saída para um arquivo AVI, carregue o AVI Mux, carregue um Filtro de Gravador de Arquivos, forneça um nome de saída para o Gravador de Arquivos e renderize o pino de saída do filtro PushSource. Você também pode carregar e conectar compressores de vídeo, efeitos de vídeo e assim por diante.

Observação

O filtro de captura da área de trabalho não dá suporte a sobreposições de hardware, portanto, ele não capturará o vídeo renderizado em uma superfície de sobreposição ou cursores exibidos por meio da sobreposição de hardware. Ele usa a GDI para converter a imagem da área de trabalho atual em um bitmap, que é passado para o pino de saída como um exemplo de mídia.

 

Baixar o exemplo

Para baixar os exemplos do SDK do DirectShow, instale a versão mais recente do SDK do Windows.

Este exemplo é instalado no seguinte caminho: [Raiz do SDK]\Samples\Multimedia\DirectShow\Filters\PushSource.

Exemplos do DirectShow