Gegenseitiger Ausschluss
[Das dieser Seite zugeordnete Feature Windows Media Format 11 SDK-ist ein Legacyfeature. Es wurde von Source Reader und Sink Writerersetzt. Source Reader und Sink Writer wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code Source Reader und Sink Writer- anstelle Windows Media Format 11 SDK-verwendet werden soll. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, um die neuen APIs zu verwenden, falls möglich umgeschrieben werden.]
Jede ASF-Datei enthält einen oder mehrere Datenströme, die jeweils digitale Mediendaten enthalten. Unter normalen Umständen wird jeder Datenstrom einer einzelnen Ausgabe zugeordnet. Bei der Wiedergabe liefert das Leserobjekt Beispiele für jede Ausgabe. Standardmäßig wird also jeder Datenstrom in einer ASF-Datei vom Leser bei der Wiedergabe übermittelt.
Es gibt Situationen, in denen Sie nicht möchten, dass jeder Datenstrom an den Client übermittelt wird. Wenn Sie z. B. eine Videodatei mit fünf Audiostreams erstellen, eine für jede von fünf Sprachen, sollen jeweils nur eine davon übermittelt werden. Der gegenseitige Ausschluss ist ein Feature des Windows Media Format SDK, mit dem Sie eine Reihe sich gegenseitig ausschließenden Streams angeben können, die alle mit derselben Ausgabe übereinstimmen.
Der gegenseitige Ausschluss wird im Profil definiert, das zum Erstellen einer Datei verwendet wird. Sie konfigurieren den gegenseitigen Ausschluss in einem Profil mithilfe von gegenseitigen Ausschlussobjekten. Sie fügen datenströme einzeln zum gegenseitigen Ausschlussobjekt hinzu, legen den Typ fest und fügen das Objekt in das Profil ein.
Das Windows Media Format SDK erkennt vier Arten von gegenseitigem Ausschluss:
- Bitfrequenz
- Sprache
- Präsentation
- Unbekannt
Gegenseitiger Ausschluss nach Bitrate
Der gegenseitige Ausschluss von Bitraten ist eine besondere Art gegenseitiger Ausschlüsse und wird häufiger als gegenseitiger Ausschluss (Multiple Bit Rate, MBR) bezeichnet. Ein gegenseitiger MBR-Ausschluss enthält eine Reihe von Datenströmen, die alle aus derselben Eingabe stammen, aber mit unterschiedlichen Bitraten codiert sind. Beim Wiedergeben einer Datei mit MBR bestimmt der Leser den am besten zu verwendenden Datenstrom basierend auf der verfügbaren Bandbreite.
Das Windows Media Format SDK unterstützt MBR für Audio- und Videostreams. Das SDK unterstützt auch einen speziellen MBR-Videotyp, der als mbR-Videogröße bezeichnet wird. Dies ist wie normale MBR-Video, mit der Ausnahme, dass die einzelnen Datenströme unterschiedliche Framegrößen aufweisen können. Beispielsweise verfügen Sie möglicherweise über einige Datenströme mit der Standardmäßigen Videogröße 320 x 240 und einige andere mit höheren Bitraten und einer Videogröße von 640 x 480.
Gegenseitiger Ausschluss nach Sprache
Der sprachbasierte gegenseitige Ausschluss ist für die Verwendung mit Inhalten (in der Regel Audio) konzipiert, die in mehreren Sprachen aufgezeichnet werden. Ein sprachbasierter gegenseitiger Ausschluss umfasst mehrere Datenströme, die aus eindeutigen Eingaben stammen. Jede Eingabe ist derselbe Inhalt, aber in einer anderen Sprache.
Damit der wechselseitige Ausschluss nach Sprache funktioniert, muss die Leseanwendung Logik enthalten, um die entsprechende Sprache auszuwählen. Wenn Sie eine Anwendung zum Wiedergeben von ASF-Dateien schreiben und Dateien mit sprachbasiertem gegenseitigen Ausschluss unterstützen möchten, sollten Sie den entsprechenden Datenstrom auswählen, bevor Sie mit der Wiedergabe beginnen.
Gegenseitiger Ausschluss nach Präsentation
Präsentationsbasierte gegenseitige Ausschlüsse werden bereitgestellt, um Videostreams zu unterstützen, die denselben Inhalt enthalten, der mit unterschiedlichen Seitenverhältnissen codiert ist. In der Regel wird dies beim Bereitstellen von Videos in einer Letterbox-Version (Seitenverhältnis 16:9) sowie für Fernsehbildschirme (Seitenverhältnis 4:3) verwendet.
Die Auswahl einer Präsentation für die Wiedergabe wird am häufigsten vom Benutzer bestimmt. Wenn Sie eine Anwendung zum Wiedergeben von ASF-Dateien schreiben und Dateien mit präsentationsbasierter gegenseitiger Ausschluss unterstützen möchten, sollten Sie dem Benutzer die Möglichkeit geben, einen Präsentationstyp für die Anzeige auszuwählen.
Unbekannter gegenseitiger Ausschluss
Sie können einen gegenseitigen Ausschluss basierend auf allen von Ihnen gewünschten Kriterien erstellen. Alle benutzerdefinierten gegenseitigen Ausschlusstypen sollten mit dem unbekannten Typ erstellt werden.
Erweiterte Features für gegenseitigen Ausschluss
Sie können auch einen gegenseitigen Ausschluss verwenden, um Gruppen, die sich gegenseitig ausschließen, Datenströme zuzuweisen. Sie können beispielsweise Audiodatenströme in mehreren Sprachen verwenden und jedem einen anderen Videostream zuweisen. Sie verwenden gegenseitigen Ausschluss, um jeden Audiodatenstrom mit seinem entsprechenden Videostream zu gruppieren und alle Gruppen gegenseitig auszuschließen.
Der Leser wählt automatisch Datenströme für alle gegenseitigen Ausschlüsse aus. Bei allen Arten gegenseitiger Ausschlüsse mit Ausnahme von MBR und sprachbasierter gegenseitiger Ausschlüsse wählt der Leser immer den Standarddatenstrom aus. Dabei handelt es sich um den ersten Stream, der dem gegenseitigen Ausschlussobjekt im Profil hinzugefügt wurde. Bei MBR wählt der Leser den Datenstrom aus, der zur Zeit der Wiedergabe am besten zur verfügbaren Bandbreite passt. Wenn Sie den Standarddatenstrom nicht verwenden möchten, können Sie die Datenstromauswahl auf manuell festlegen, bevor Sie mit dem Lesen einer Datei beginnen.
Die manuelle Datenstromauswahl gilt für die gesamte Datei. Schwierigkeiten können auftreten, wenn Sie gegenseitige Ausschlüsse verschiedener Typen in derselben Datei haben. Eine Datei kann z. B. sowohl bitratebasierte gegenseitige Ausschlüsse als auch benutzerdefinierte gegenseitige Ausschlüsse enthalten. Wenn Sie einen anderen Datenstrom als den Standardwert im benutzerdefinierten gegenseitigen Ausschluss auswählen möchten, müssen Sie die manuelle Datenstromauswahl verwenden. Wenn Sie jedoch die manuelle Streamauswahl verwenden, wählt der Leser nicht automatisch den Datenstrom mit mehreren Bitraten aus. Sie müssen diesen Fall in Ihrer Anwendung planen, wenn Sie mehrere Arten von gegenseitigen Ausschluss in einer einzigen Datei unterstützen möchten. Dies bedeutet in der Regel das Erstellen eigener Datenstromauswahlroutinen für normalerweise automatische Arten von gegenseitigen Ausschluss.
Verwandte Themen