Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ein Filter ist eine Gruppe von Knoten, die eine Verarbeitungsaufgabe kapselt, die für den Datenstrom ausgeführt werden soll. Pins dienen als Eingabe- und Ausgabeleitungen für einen Filter.
Ein einfacher Filter kann einen Datensenken-Pin und einen Datenquellen-Pin enthalten. Der Filter empfängt eingehende Daten am Daten-Senken-Pin, verarbeitet sie intern und schreibt an den Datenquellen-Pin. In der folgenden Abbildung werden die Pins als schwere Liniensegmente dargestellt. Der Filter verbindet intern den Daten-Sink-Pin mit einem internen Verarbeitungsmodul, einem Knoten, der wiederum mit dem Datenquelle-Pin verbunden ist.
Ein anderes Gerät kann Datenflüsse zwischen Pins kombinieren oder teilen. Beispielsweise unterstützt ein Audiomixer mehrere Datensenke-Pins. Der Mixer kombiniert sie in einem einzelnen Datenstrom und schreibt diesen Datenstrom in einen Datenquellen-Pin. Die folgende Abbildung zeigt den Datenfluss.
Das Diagramm beschreibt die interne Beziehung zwischen den Pins des Filters. Ein komplizierterer Filter kann mehrere Knoten kapseln, die Daten transformieren, die durch den Filter fließen.
Filter geben interne Verbindungen zwischen Pins und internen Knoten mithilfe des KSPROPSETID_Topology Eigenschaftensatzes an.
Die KSPROPERTY_TOPOLOGY_CONNECTIONS-Eigenschaft fragt alle Verbindungen zwischen Knoten eines KS-Filters ab. Diese Eigenschaft gibt ein Array von KSTOPOLOGY_CONNECTION zurück. Jede KSTOPOLOGY_CONNECTION Struktur stellt eine einzelne Datenpfadverbindung innerhalb eines Filters dar. Im obigen Mischerdiagramm könnte die Reihenfolge der KSTOPOLOGY_CONNECTION Strukturen wie folgt aussehen:
// FromNode, FromNodePin, ToNode, ToNodePin,
{
{ KSFILTER_NODE, 0, 0, 0 },
{ 0, 1, KSFILTER_NODE, 1 }
}