Udostępnij przez


Deskryptory AVStream

Minidriver AVStream opisuje siebie oraz obsługiwane typy filtrów, poprzez dostarczenie zagnieżdżonych struktur deskryptora w wywołaniu do KsInitializeDriver. Każdy kluczowy składnik — urządzenie, fabryka filtrów i fabryka numerów PIN — ma skojarzony deskryptor.

Jak pokazano w hierarchii obiektów AVStream, deskryptor najwyższego poziomu dla minidrivera AVStream to deskryptor urządzenia, KSDEVICE_DESCRIPTOR.

W deskryptorze urządzenia element członkowski FilterDescriptors wskazuje tablicę struktur KSFILTER_DESCRIPTOR opisujących typy filtrów, które mogą tworzyć to urządzenie. Klienci AVStream mogą wywoływać funkcję KsCreateFilterFactory , aby dynamicznie dodawać fabryki filtrów.

KSFILTER_DESCRIPTOR wskazuje liczbę typów wyprowadzeń, które obsługuje filtr, kategorie KS, w których filtr ma zostać zarejestrowany, oraz topologia filtru. Wewnątrz każdego deskryptora filtra minidriver dostarcza wskaźnik do tablicy struktur KSPIN_DESCRIPTOR_EX. Każdy z tych deskryptorów pinów opisuje typ pinu, który ten filtr może zainicjować. Możesz utworzyć dodatkowe fabryki pinów, wywołując funkcję KsFilterCreatePinFactory.

Zazwyczaj minidrivery AVStream definiują statyczne tabele deskryptorów w swoim kodzie źródłowym i wywołują KsInitializeDriver do przeprowadzenia konfiguracji. Aby uzyskać więcej informacji na temat inicjowania sterownika, zobacz Inicjowanie minidrivera AVStream.

Istnieją również inne typy deskryptorów, takich jak deskryptor węzłów KSNODE_DESCRIPTOR, który opisuje dany węzeł topologii.

Tablica wywołań jest wspólna dla każdego z trzech głównych typów deskryptorów. Zobacz Tabele obsługi AVStream.