Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Os filtros AVStream suportam relógios em pinos.
Para indicar que um pino AVStream expõe um relógio, defina KSPIN_FLAG_IMPLEMENT_CLOCK no membro Flags do primeiro KSPIN_DESCRIPTOR_EX no membro PinDescriptors de KSFILTER_DESCRIPTOR.
Também forneça um ponteiro para uma estrutura KSCLOCK_DISPATCH em KSPIN_DISPATCH.
Para fazer solicitações de relógio, use os métodos definidos na interface IKsReferenceClock . Você pode adquirir uma interface IKsReferenceClock chamando KsPinGetReferenceClockInterface. O minidriver AVStream é responsável por liberar a interface quando terminar.
Para obter valores de temporizador para colocar no campo PresentationTime do KSSTREAM_HEADER, chame IKsReferenceClock::GetCorrelatedTime.
Observe que o relógio nunca aparece no GraphEdit, mesmo que o relógio tenha sido selecionado.
Para verificar se o relógio foi selecionado, verifique se as chamadas para os métodos IKsReferenceClock geram chamadas para despachar rotinas especificadas no KSCLOCK_DISPATCH.
O gerenciador de gráficos de filtro seleciona um relógio quando um gráfico transita para o estado de pausa. Qualquer filtro que seja uma fonte 'push', por exemplo, um filtro de captura, tem preferência como fornecedor de relógio.