Freigeben über


IMFSampleOutputStream-Schnittstelle (mfobjects.h)

Schreibt Medienbeispiele in einen Bytestream.

Vererbung

Die IMFSampleOutputStream-Schnittstelle erbt von der IUnknown-Schnittstelle . IMFSampleOutputStream verfügt auch über folgende Membertypen:

Methoden

Die IMFSampleOutputStream-Schnittstelle verfügt über diese Methoden.

 
IMFSampleOutputStream::BeginWriteSample

Startet eine asynchrone Anforderung zum Schreiben eines Medienbeispiels in den Stream.
IMFSampleOutputStream::EndWriteSample

Schließt eine asynchrone Anforderung ab, um ein Medienbeispiel in den Stream zu schreiben.

Hinweise

Ein beschreibbarer Bytestream kann diese Schnittstelle optional implementieren.

Diese Schnittstelle ermöglicht es dem Aufrufer, Medienbeispiele zum Schreiben an den Bytedatenstrom zu senden, anstatt die IMFByteStream::BeginWrite-Methode zum Schreiben von Blobs mit nicht typisierten Daten zu verwenden. Der Bytedatenstrom kann die im Medienbeispiel enthaltenen Informationen verwenden, um die Schreibvorgänge der Daten zu optimieren. Beispielsweise kann ein Bytestream, der Mediendaten über ein Netzwerk sendet, basierend auf dem Zeitstempel optimiert werden.

Um einen Zeiger auf diese Schnittstelle zu erhalten, rufen Sie QueryInterface für das Bytestreamobjekt auf.

Jede Implementierung von IMFByteStream , die IMFSampleOutputStream als Schnittstelle verfügbar macht, muss die folgenden Anforderungen erfüllen:

  • Alle Schreibvorgänge von beiden Schnittstellen gehen immer an genau dasselbe Bytestreamobjekt.
  • Die aktuelle Position für IMFSampleOutputStream und IMFByteStream muss immer gleich sein. Wenn Sie beispielsweise in IMFSampleOutputStream schreiben, wird auch die aktuelle Position von IMFByteStream aktualisiert.
  • Beim Schreiben eines Beispiels mit BeginWriteSample und EndWriteSample wird das Beispiel serialisiert, indem die Daten aus allen Puffern im Beispiel in der Reihenfolge geschrieben werden, in der die Puffer im Beispiel gespeichert werden. (Verwenden Sie IMFSample::GetBufferByIndex , um die einzelnen Puffer nach Indexwert abzurufen.) Die Gesamtzahl der kopierten Bytes entspricht der Anzahl der Bytes, die aus allen Puffern geschrieben wurden.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile mfobjects.h (include Mfidl.h)

Weitere Informationen

Media Foundation-Schnittstellen