Partilhar via


Para procurar por número de quadro usando o leitor assíncrono

[A funcionalidade associada a esta página, Windows Media Format 11 SDK, é uma funcionalidade herdada. Foi substituído pelo Source Reader e pelo Sink Writer. Source Reader e Sink Writer foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda vivamente que o novo código utilize do Leitor de Origem e do Gravador de Separadores em vez de SDK do Windows Media Format 11, sempre que 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 assíncrono pode ser usado para procurar os números de quadros de fluxos de vídeo em um arquivo ASF. Para usar a busca baseada em quadros, o arquivo carregado no leitor deve ser indexado por quadro. Cada fluxo de vídeo individual pode ser indexado. Para determinar se um fluxo foi indexado por quadro, você pode verificar o atributo g_wszWMNumberOfFrames no cabeçalho do arquivo chamando IWMHeaderInfo::GetAttributeByName.

Para buscar dados em um arquivo ASF por número de quadro usando o leitor assíncrono, execute as etapas a seguir.

  1. Obtenha um ponteiro para o IWMReaderAdvanced3 interface do objeto leitor chamando IWMReader::QueryInterface.
  2. Defina o número do quadro inicial e a duração chamando IWMReaderAdvanced3::StartAtPosition. Você deve especificar o número de fluxo de um fluxo de vídeo indexado por quadros. O leitor sincronizará o restante das saídas com o tempo de apresentação do quadro especificado do fluxo especificado e iniciará a entrega de amostras de saída.
  3. Manipule os exemplos como faria normalmente em sua implementação do método IWMReaderCallback::OnSample.

leitura de arquivos com o leitor assíncrono

Leitura de metadados na reprodução

Trabalhando com índices