Erstellen von Multimediastreamobjekten und Streambeispielen

Hinweis

Diese APIs sind veraltet. Anwendungen sollten den Sample Grabber-Filter verwenden oder einen benutzerdefinierten Filter implementieren, um Daten aus einem DirectShow-Filterdiagramm zu erhalten.

Objekte, die die IMultiMediaStream-Schnittstelle unterstützen, sind die grundlegenden Container für Multimediadatenströme. Die IMultiMediaStream-Schnittstelle enthält Methoden, die die Datenströme des Objekts aufzählen. Diese Streams sind in der Regel Video- und Audiodaten, können aber Daten beliebiger Formate enthalten, z. B. Untertitel, Nur-Text oder SMPTE-Zeitcode. Die IMultiMediaStream-Schnittstelle ist jedoch ein generischer Container. -Entwickler können andere Versionen der -Schnittstelle erstellen, die bestimmte Datenformate unterstützen. Objekte, die z. B. die IAMMultiMediaStream-Schnittstelle implementieren, können Streams eines beliebigen DirectShow-Datenformats aufzählen und steuern. Da einzelne Datenströme formatspezifisch sind, unterstützen sie mindestens zwei verschiedene Schnittstellen: eine generische und eine datenspezifische. Jeder Stream unterstützt die IMediaStream-Schnittstelle, die Methoden zum Abrufen des Formats und einen Zeiger auf den Stream selbst bietet. Die IDirectDrawMediaStream-Schnittstelle verfügt dagegen über Methoden, die sich speziell mit dem Rendern von Videodaten befassen. Jede schnittstelle, die von IMultiMediaStream abgeleitet wird, unterstützt auch die Erstellung von Streambeispielen, die grundlegenden Einheiten von Streamingdaten.

Ein Multimediabeispiel ist ein Verweis auf ein Objekt, das die Mediendaten enthält. Bei einem Videobild ist dies eine DirectDraw-Oberfläche. Der genaue Inhalt des Beispiels variiert je nach Medientyp (Sound, Text und so weiter). Da ein Beispiel nur ein Verweis auf das Datenobjekt ist, kann eine beliebige Anzahl von Streambeispielen auf dasselbe Objekt verweisen. Die IStreamSample-Schnittstelle stellt Methoden bereit, die die Merkmale eines Beispiels wie Start- und Stoppzeit, Status und Stream-Zuordnung erhalten und festlegen. Die IStreamSample::Update-Methode aktualisiert die Daten des Beispiels im Fall von lesbaren Streams. Bei schreibbaren Datenströmen werden die Daten des Beispiels in den Stream geschrieben. In der Regel verwenden Sie die Update-Methode in einer Schleife, die Streamingdaten rendert, überträgt oder speichert.

Informationen zur Multimediastreamingarchitektur