Notificando CBasePin de alterações de estado de filtro
[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.]
A classe CBasePin é notificada sempre que o estado do filtro proprietário é alterado. Para cada transição de estado, o filtro chama um método correspondente no pino, conforme mostrado na tabela a seguir.
Novo estado de filtro | Método CBasePin |
---|---|
Parado | CBasePin::Inactive |
Em Pausa | CBasePin::Active |
Executando | CBasePin::Run |
A classe derivada deve substituir esses métodos para responder à alteração de estado. Dependendo do filtro, o pino pode iniciar um thread de trabalho que fornece exemplos, confirmar ou descompromissar seu alocador de memória e assim por diante.