Compartilhar via


Para procurar por código de hora SMPTE usando o leitor síncrono

[O recurso associado a esta página, Windows Media Format 11 SDK, é um recurso herdado. Ele foi substituído por Leitor de Origem e Gravador de Coletor. O Leitor de Origem e o Gravador de Coletor foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use o Leitor de Origem e o Gravador de Coletor em vez do SDK do Windows Media Format 11, 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 objeto leitor síncrono pode buscar um ponto em um arquivo com base no código de tempo SMPTE associado a um fluxo de vídeo. Os dados de código de tempo são encapsulados em estruturas de WMT_TIMECODE_EXTENSION_DATA anexadas a amostras de vídeo como extensões de unidade de dados.

Os códigos de tempo SMPTE são definidos por um intervalo e um código de tempo dentro desse intervalo. Um intervalo é uma série contínua de códigos de tempo. Cada código de tempo é definido por horas, minutos, segundos e quadros.

Para buscar dados em um arquivo ASF por código de tempo SMPTE usando o leitor síncrono, execute as etapas a seguir.

  1. Defina o código de hora inicial e o código de hora final para entrega de exemplo chamando IWMSyncReader::SetRangeByFrame. Você deve especificar o número de fluxo de um fluxo de vídeo indexado por código de tempo. O leitor síncrono sincronizará o restante das saídas com o tempo de apresentação do quadro especificado do fluxo especificado.
  2. Comece a recuperar exemplos com chamadas para IWMSyncReader::GetNextSample. Prossiga como faria normalmente com o leitor síncrono.

Lendo arquivos com o leitor síncrono

Suporte a código de hora SMPTE

Trabalhando com índices