So suchen Sie mithilfe des asynchronen Readers nach Framenummer

Das asynchrone Readerobjekt kann verwendet werden, um die Framezahlen von Videostreams in einer ASF-Datei zu suchen. Um die framebasierte Suche zu verwenden, muss die im Reader geladene Datei nach Frame indiziert werden. Jeder einzelne Videostream kann indiziert werden. Um zu bestimmen, ob ein Stream nach Frame indiziert wurde, können Sie das _ g wszWMNumberOfFrames-Attribut im Header der Datei überprüfen, indem Sie IWMHeaderInfo::GetAttributeByNameaufrufen.

Führen Sie die folgenden Schritte aus, um Daten in einer ASF-Datei anhand der Framenummer mithilfe des asynchronen Readers zu suchen.

  1. Rufen Sie einen Zeiger auf die IWMReaderAdvanced3-Schnittstelle des Readerobjekts ab, indem Sie IWMReader::QueryInterface aufrufen.
  2. Legen Sie die Startframenummer und -dauer fest, indem Sie IWMReaderAdvanced3::StartAtPositionaufrufen. Sie müssen die Streamnummer eines frameindizierten Videostreams angeben. Der Reader synchronisiert die restlichen Ausgaben mit der Präsentationszeit des angegebenen Frames des angegebenen Streams und beginnt mit der Übermittlung von Ausgabebeispielen.
  3. Verarbeiten Sie die Beispiele wie gewohnt in Ihrer Implementierung der IWMReaderCallback::OnSample-Methode.

Lesen von Dateien mit dem asynchronen Reader

Lesen von Metadaten bei der Wiedergabe

Arbeiten mit Indizes