Compartilhar via


Método CBaseReferenceClock.AdvisePeriodic

[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 AdvisePeriodic método cria uma solicitação de aconselhamento periódica. Esse método implementa o método IReferenceClock::AdvisePeriodic .

Sintaxe

HRESULT AdvisePeriodic(
   REFERENCE_TIME StartTime,
   REFERENCE_TIME PeriodTime,
   HSEMAPHORE     hSemaphore,
   DWORD_PTR      *pdwAdviseToken
);

Parâmetros

StartTime

Hora da primeira notificação, em unidades de 100 nanossegundos. Deve ser maior que zero e menor que MAX_TIME.

PeriodTime

Tempo entre notificações, em unidades de 100 nanossegundos. Deve ser maior que zero.

hSemaphore

Identificador para um semáforo, criado pelo chamador.

pdwAdviseToken

Ponteiro para uma variável que recebe um identificador para a solicitação de consultoria.

Retornar valor

Retorna um dos valores HRESULT mostrados na tabela a seguir.

Código de retorno Descrição
S_OK
Êxito
E_INVALIDARG
Valores de tempo inválidos
E_OUTOFMEMORY
Falha
E_POINTER
Argumento de ponteiro NULL

Comentários

Em cada hora de notificação, o relógio libera o semáforo especificado no parâmetro hSemaphore . Quando nenhuma notificação adicional for necessária, chame o método CBaseReferenceClock::Unadvise e passe o valor pdwAdviseToken retornado dessa chamada.

Requisitos

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

Confira também

Classe CBaseReferenceClock