Partilhar via


Amostra do filtro de escopo

[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEnginee Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda vivamente que o novo código utilize 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.]

Descrição

O filtro Escopo é um filtro de renderizador que exibe dados de som como formas de onda.

Utilização

Para usar esse filtro, abra o GraphEdit e renderize um arquivo de áudio (ou um arquivo de vídeo com um fluxo de áudio). Desconecte o renderizador de áudio temporariamente e insira o filtro de amostra Infinite-Pin Tee (InfTee Filter Sample). Reconecte o renderizador de áudio. Em seguida, conecte o segundo pino de saída do filtro Tee Infinite-Pin ao filtro de escopo. Agora execute o gráfico.

A janela Escopo é implementada como uma caixa de diálogo, não como uma janela real. Os desenvolvedores que criam painéis de controle para alterar parâmetros de filtro em tempo real podem querer usar uma técnica como esta em vez de páginas de propriedades.

O filtro Escopo demonstra a configuração de um thread separado para processar dados. Nesse caso, os dados são apenas copiados para um buffer separado no método IMemInputPin::Receive e, em seguida, são exibidos na janela Escopo no thread separado.

O filtro Escopo também permite monitorar a saída de áudio para determinar se você está cortando, para que você possa ajustar o ganho.

Este filtro aparece no GraphEdit como "Osciloscópio".

Download do 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: [SDK Root]\Samples\Multimedia\DirectShow\Filters\Scope.

Exemplos do DirectShow