Freigeben über


IGraphConfig-Schnittstelle (strmif.h)

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]

Der Filter Graph-Manager wird verfügbar gemacht, um das Erstellen dynamischer Diagramme IGraphConfig zu unterstützen. Diese Schnittstelle ermöglicht Es Anwendungen und Filtern, das Filterdiagramm neu zu konfigurieren, während sich der Graph in einem ausgeführten Zustand befindet, ohne Daten aus dem Datenstrom zu verlieren.

Die einfachste Möglichkeit zum dynamischen Neuerstellen des Graphen besteht darin, die IGraphConfig::Reconnect-Methode aufzurufen. Diese Methode behandelt die meisten Details der dynamischen Neuerstellung des Graphen. Wenn eine Situation auftritt, in der Sie Ihre eigene Technik implementieren möchten, IGraphConfig stellt auch die IGraphConfig::Reconfigure-Methode bereit. Diese Methode ruft eine Sperre für das Filterdiagramm ab und ruft dann eine Rückruffunktion in Ihrer Anwendung auf, die den Graphen neu konfiguriert. Bei dieser Methode wird der Großteil der Arbeit auf Ihre Anwendung verlagert. Weitere Informationen finden Sie unter Erstellen von dynamischen Graphen.

Um den Prozess des Hinzufügens und Entfernens von Filtern zu optimieren, verwaltet das Filterdiagramm einen Filtercache. Während eines Aufrufs der Reconnect-Methode können Sie angeben, dass alle filter, die aus dem Diagramm entfernt wurden, dem Cache hinzugefügt werden. Sie können dem Cache auch direkt einen Filter hinzufügen, wenn Sie wissen, dass er wahrscheinlich benötigt wird, indem Sie IGraphConfig::AddFilterToCache aufrufen. Die Methoden IGraphBuilder::Render, IGraphBuilder::RenderFile und IGraphBuilder::Connect versuchen automatisch, Filter im Cache zu verwenden, bevor andere Filter verwendet werden. Außerdem können Sie in der Reconnect-Methode angeben, dass nur zwischengespeicherte Filter für die erneute Verbindung verwendet werden. Beachten Sie, dass filter, die im Cache gespeichert sind, tatsächlich nicht Teil des Graphen sind. Sie werden von allen Pins getrennt und in einem beendeten Zustand beibehalten.

Vererbung

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

Methoden

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

 
IGraphConfig::AddFilterToCache

Die AddFilterToCache-Methode fügt dem Filtercache einen Filter hinzu.
IGraphConfig::EnumCacheFilter

Die EnumCacheFilter-Methode listet die Filter im Filtercache auf.
IGraphConfig::GetFilterFlags

Die GetFilterFlags-Methode ruft die Konfigurationsinformationen eines Filters ab.
IGraphConfig::GetStartTime

Die GetStartTime-Methode ruft die Referenzzeit ab, die verwendet wurde, als das Filterdiagramm zuletzt in einen ausgeführten Zustand versetzt wurde.
IGraphConfig::P ushThroughData

Die PushThroughData-Methode pusht Daten durch das Filterdiagramm an den angegebenen Pin.
IGraphConfig::Reconfigure

Die Reconfigure-Methode sperrt das Filterdiagramm und ruft eine Rückruffunktion in der Anwendung oder im Filter auf, um eine dynamische Neukonfiguration durchzuführen.
IGraphConfig::Reconnect

Die Reconnect-Methode führt eine dynamische erneute Verbindung zwischen zwei Pins durch.
IGraphConfig::RemoveFilterEx

Die RemoveFilterEx-Methode entfernt einen Filter aus dem Filterdiagramm.
IGraphConfig::RemoveFilterFromCache

Die RemoveFilterFromCache-Methode entfernt einen Filter aus dem Filtercache.
IGraphConfig::SetFilterFlags

Die SetFilterFlags-Methode legt die Konfigurationsinformationen eines Filters fest.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile strmif.h (include Dshow.h)