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) |