Udostępnij przez


Filtry KS

Filtr to grupa węzłów, która hermetyzuje zadanie przetwarzania do wykonania w strumieniu danych. Piny służą jako wejścia i wyjścia filtra.

Prosty filtr może zawierać jeden numer PIN ujścia danych i jeden numer PIN źródła danych. Filtr odbiera dane przychodzące na pin ujścia danych, przetwarza je wewnętrznie i zapisuje na pinie źródła danych. Na poniższej ilustracji piny przedstawiono jako grube linie. Wewnętrznie filtr łączy pin wyjścia danych z wewnętrzną jednostką przetwarzania, węzłem, który z kolei jest połączony z pinem źródła danych.

diagram ilustrujący prosty filtr ks.

Inne urządzenie może również łączyć lub dzielić przepływy danych między wyprowadzeniami. Na przykład mikser audio obsługuje kilka pinów odbiornika danych. Mikser łączy je w jeden strumień i zapisuje ten strumień do przypinacza źródła danych. Ilustracja poniżej przedstawia przepływ danych.

diagram ilustrujący mikser.

Wykres opisuje relację wewnętrzną między wyprowadzeniami filtru. Bardziej skomplikowany filtr może hermetyzować kilka węzłów, które przekształcają dane przepływające przez filtr.

Filtry określają połączenia wewnętrzne między pinami a węzłami wewnętrznymi, wykorzystując zestaw właściwości KSPROPSETID_Topology.

Właściwość KSPROPERTY_TOPOLOGY_CONNECTIONS wykonuje zapytania o wszystkie połączenia między węzłami filtru KS. Ta właściwość zwraca tablicę KSTOPOLOGY_CONNECTION. Każda struktura KSTOPOLOGY_CONNECTION reprezentuje jedno połączenie ścieżki danych wewnątrz filtru. Na powyższym diagramie miksera sekwencja struktur KSTOPOLOGY_CONNECTION może być następująca:

//    FromNode,       FromNodePin,     ToNode,        ToNodePin,
{
 {  KSFILTER_NODE,        0,            0,               0     },
 {       0,               1,       KSFILTER_NODE,        1     }
}