Descriptores de AVStream
Un minidriver AVStream se describe a sí mismo y los tipos de filtro que admite proporcionando estructuras de descriptor anidadas en la llamada a KsInitializeDriver. Cada componente clave (el dispositivo, el generador de filtros y el generador de patillas ) tiene un descriptor asociado.
Como se muestra en la jerarquía de objetos AVStream, el descriptor de nivel más alto para un minidriver avStream es el descriptor de dispositivo, KSDEVICE_DESCRIPTOR.
En el descriptor de dispositivo, el miembro FilterDescriptors apunta a una matriz de estructuras de KSFILTER_DESCRIPTOR que describen los tipos de filtros que puede crear este dispositivo. Los clientes avStream pueden llamar a KsCreateFilterFactory para agregar dinámicamente generadores de filtros.
Un KSFILTER_DESCRIPTOR indica cuántos tipos de patillas admite el filtro, las categorías KS en las que se va a registrar el filtro y la topología del filtro. Dentro de cada descriptor de filtro, el minidriver proporciona un puntero a una matriz de estructuras de KSPIN_DESCRIPTOR_EX . Cada uno de estos descriptores de patillas describe un tipo de patilla que este filtro puede crear instancias. Puede crear generadores de patillas adicionales llamando a KsFilterCreatePinFactory.
Normalmente, los minidrivers avStream diseñan tablas de descriptores estáticos en su origen y llaman a KsInitializeDriver para realizar el trabajo de configuración. Para obtener más información sobre cómo inicializar el controlador, consulte Inicialización de un minidriver AVStream.
También hay otros tipos de descriptores, como el descriptor de nodo KSNODE_DESCRIPTOR, que describe un nodo de topología determinado.
La tabla de distribución es común a cada uno de los tres tipos principales de descriptores. Consulte Tablas de distribución de AVStream.