Compartilhar via


Classe CBaseInputPin

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

Hierarquia da classe cbaseinputpin

A CBaseInputPin classe é uma classe base abstrata para implementar pinos de entrada. Essa classe adiciona suporte para a interface IMemInputPin , além do suporte à interface IPin fornecido pelo CBasePin.

Para usar essa classe, derive uma nova classe e substitua pelo menos os seguintes métodos:

Dependendo da função do pino, talvez seja necessário substituir métodos adicionais em CBaseInputPin ou CBasePin.

Variáveis de membro protegidas Descrição
m_pAllocator Ponteiro para o alocador de memória.
m_bReadOnly Sinalizador que indica se o alocador produz amostras de mídia somente leitura.
m_bFlushing Sinalizador que indica se o pino está sendo liberado no momento.
m_SampleProps Propriedades do exemplo mais recente.
Métodos públicos Descrição
Cbaseinputpin Método de construtor.
~Cbaseinputpin Método de destruidor.
Breakconnect Libera o pino de uma conexão.
Isreadonly Consulta se o alocador usa amostras de mídia somente leitura.
IsFlushing Consulta se o filtro está sendo liberado no momento.
CheckStreaming Determina se o pino pode aceitar exemplos. Virtual.
PassNotify Passa uma mensagem de controle de qualidade para o objeto apropriado.
Inativo Notifica o pino de que o filtro não está mais ativo. Virtual.
SampleProps Recupera as propriedades do exemplo mais recente.
Métodos IPin Descrição
Beginflush Inicia uma operação de liberação.
Endflush Encerra uma operação de liberação.
Métodos IMemInputPin Descrição
Getallocator Recupera o alocador de memória proposto por esse pino.
NotifyAllocator Especifica um alocador para a conexão.
GetAllocatorRequirements Recupera as propriedades do alocador solicitadas pelo pino de entrada.
Receber Recebe o próximo exemplo de mídia no fluxo.
ReceiveMultiple Recebe vários exemplos no fluxo.
Receivecanblock Determina se as chamadas para o método CBaseInputPin::Receive podem ser bloqueadas.
Métodos IQualityControl Descrição
Notificar Recebe uma mensagem de controle de qualidade.

Requisitos

Requisito Valor
parâmetro
Amfilter.h (inclua Streams.h)
Biblioteca
Strmbase.lib (builds de varejo);
Strmbasd.lib (builds de depuração)