Partilhar via


Criando um grafo de captura de áudio com versão prévia

[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 grafo de filtro descrito em Criando um grafo de captura de áudio executa apenas captura, sem visualização. Para visualizar e capturar ao mesmo tempo, o grafo de filtro precisa usar o Filtro de Tee de Pin Infinito. Esse filtro tem um pino de entrada e cria quantos pinos de saída forem necessários. (Ele começa com um pino de saída. Cada vez que você conecta um pino de saída, ele cria outro.) O filtro Tee de Pino Infinito fornece cada amostra que recebe, inalterada, por meio de todos os seus pinos de saída.

Conecte o Filtro de Captura de Áudio ao Tee de Pino Infinito e conecte o Tee de Pino Infinito ao multiplexador e ao Filtro do Renderizador directSound. Conecte o multiplexador ao gravador de arquivos, como antes. O diagrama a seguir ilustra o grafo de filtro resultante para um arquivo AVI.

grafo de captura de áudio com visualização

Como o Renderizador DirectSound é o renderizador de áudio padrão, você pode simplesmente chamar o método IGraphBuilder::Render no pin de saída do Pin Infinito. O Gerenciador de Grafo de Filtro usa a Conexão Inteligente para criar o renderizador, adicioná-lo ao grafo de filtro e conectar os pinos.

Observação

Se você capturar áudio de um microfone e visualizá-lo de um alto-falante no mesmo computador, poderá criar comentários de áudio.

 

Captura de áudio