Compartilhar via


Método CTransInPlaceFilter.CompleteConnect

[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 CompleteConnect método conclui uma conexão de pino.

Sintaxe

HRESULT CompleteConnect(
   PIN_DIRECTION direction,
   IPin          *pReceivePin
);

parâmetros

direction

Membro do PIN_DIRECTION tipo enumerado, especificando qual pino no filtro está fazendo a conexão.

pReceivePin

Ponteiro para a interface IPin do outro pino nesta tentativa de conexão.

Retornar valor

Retorna um HRESULT. Os valores possíveis incluem os mostrados na tabela a seguir.

Código de retorno Descrição
S_OK
Êxito.
VFW_E_NOT_IN_GRAPH
O filtro não está em um grafo de filtro.

Comentários

Esse método substitui o método CTransformFilter::CompleteConnect .

O comportamento do filtro depende da ordem das conexões de fixação:

  • Se o pin de entrada estiver conectado primeiro, a conexão usará um alocador temporário. Quando o pino de saída está conectado, o filtro reconecta o pino de entrada. Reconectar o pin de entrada faz com que o filtro de upstream renegocie o alocador. Nesse ponto, o pino de entrada propõe um alocador do filtro downstream. Para obter mais informações, consulte CTransInPlaceInputPin::GetAllocator.
  • Se o pino de saída estiver conectado primeiro, o pino de saída não selecionará um alocador. Quando o pino de entrada está conectado, ele negocia um alocador para ambas as conexões. Se os tipos de mídia de entrada e saída não forem iguais, o filtro reconectará o pino de saída usando o tipo de entrada.

O filtro executa todas as reconexões de pin chamando o método CBaseFilter::ReconnectPin . O método ReconnectPin , por sua vez, chama o método IFilterGraph2::ReconnectEx no gerenciador de grafo de filtro.

Requisitos

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

Confira também

Classe CTransInPlaceFilter