Erweiterte Topologieerstellung
In diesem Abschnitt werden einige erweiterte Techniken zum Erstellen von Topologien beschrieben. Sie können diese Techniken verwenden, wenn Sie mehr Kontrolle über die Topologien haben möchten, die Sie an die Mediensitzung senden.
Da diese Techniken für Szenarien vorgesehen sind, die über die funktionalität hinausgehen, die vom Standardtopologieladeprogramm bereitgestellt wird, hängen viele details von den spezifischen Anforderungen Ihrer Anwendung ab. Daher ist dieser Abschnitt lose nach kleineren Teilaufgaben und nicht nach vollständigen End-to-End-Szenarien organisiert.
Die typische Wiedergabeanwendung führt die folgenden Schritte aus:
- Die Anwendung erstellt eine partielle Topologie und stellt sie in der Mediensitzung in die Warteschlange.
- Die Mediensitzung ruft den Topologieladeprogramm auf, um die Topologie aufzulösen.
Wenn Sie über die Funktionen des Topologieladeprogramms hinausgehen möchten, gibt es drei allgemeine Ansätze:
Erstellen Sie eine vollständige Topologie. Wenn Sie die Topologie in der Mediensitzung in die Warteschlange stellen, rufen Sie IMFMediaSession::SetTopology mit dem flag MFSESSION_SETTOPOLOGY_NORESOLUTION auf. Dieses Flag verhindert, dass die Mediensitzung versucht, die Topologie aufzulösen.
Rufen Sie den Topologieladeprogramm direkt auf, um die Topologie aufzulösen. Sie können dann die vollständige Topologie ändern, bevor Sie sie in der Mediensitzung anstehen.
Implementieren Sie ein benutzerdefiniertes Topologieladeprogramm. Bei diesem Ansatz stellen Sie eine partielle Topologie in die Warteschlange, aber die Mediensitzung ruft Ihr benutzerdefiniertes Ladeprogramm anstelle der Standardmäßigen Media Foundation-Implementierung auf. Ein Vorteil dieses Ansatzes besteht darin, dass Sie benutzerdefinierte Topologien in der geschützten Umgebung erstellen können. (In diesem Fall muss das Topologieladeprogramm jedoch eine vertrauenswürdige Komponente sein. Weitere Informationen finden Sie unter Pfad für geschützte Medien.)
In diesem Abschnitt werden die folgenden Themen behandelt:
Thema | BESCHREIBUNG |
---|---|
Benutzerdefinierte Topologieladeprogramme | Bereitstellen einer benutzerdefinierten Implementierung von IMFTopoLoader für die Mediensitzung |
Binden von Ausgabeknoten an Mediensenken | Vorbereiten der Ausgabeknoten in einer Topologie, wenn Sie den Topologieladeprogramm außerhalb der Mediensitzung verwenden. |
Hinzufügen eines Decoders zu einer Topologie | Hier erfahren Sie, wie Sie einen Decoder manuell auswählen und einer Topologie hinzufügen. |
Zugehörige Themen