Medienbeispiele (Microsoft Media Foundation)

Ein Medienbeispiel ist ein Objekt, das eine sortierte Liste von 0 oder mehr Puffern enthält. Medienbeispiele machen die IMFSample-Schnittstelle verfügbar. Die In einem Beispiel enthaltene Datenmenge hängt von der Komponente ab, die das Beispiel erstellt, und vom Typ der Daten in den Puffern. Bei unkomprimierten Videos enthält ein Beispiel in der Regel einen einzelnen Videoframe. Bei unkomprimierten Audiodaten kann die Datenmenge variieren, aber in der Regel umfasst ein Audioframe nicht zwei Beispiele. Für komprimierte Daten gelten diese Richtlinien möglicherweise nicht.

Ein einzelnes Beispiel kann aus Gründen der Effizienz mehrere Puffer enthalten. Beispielsweise ist in einer ASF-Datei ein Videoframe häufig auf mehrere ASF-Pakete verteilt. Die Medienquelle liest die Pakete möglicherweise in mehrere Puffer. Anstatt jedes Fragment in einen Puffer zu kopieren, fügt die Quelle einfach alle Puffer in ein Beispiel ein. Nachgeschaltete Komponenten können dann entscheiden, ob die kleineren Puffer in einen zusammenhängenden Puffer kopiert werden sollen. Wenn Sie eine Pipelinekomponente schreiben, sollten Sie im Allgemeinen davon ausgehen, dass jedes Beispiel mehr als einen Puffer enthalten kann.

In diesem Abschnitt werden die folgenden Themen behandelt:

Thema BESCHREIBUNG
Arbeiten mit Medienbeispielen Beschreibt das allgemeine Verhalten von Medienbeispielen.
Videobeispiele Beschreibt eine spezielle Implementierung von IMFSample , die zum Speichern von nicht komprimierten Videoframes entwickelt wurde.

 

Medienpuffer

Media Foundation-Grundtypen