Introducción a los controladores de audio de WDM

Los servicios de streaming de kernel (KS) admiten el procesamiento en modo kernel de secuencias de datos para audio y para otros tipos de medios continuos. Conceptualmente, una secuencia se somete al procesamiento a medida que fluye a lo largo de una ruta de acceso de datos que contiene cierto número de nodos de procesamiento. Un conjunto de nodos relacionados se agrupa para formar un filtro KS, que representa un bloque más o menos independiente de la funcionalidad de procesamiento de flujos. Las funciones más complejas se pueden construir de forma modular mediante la cascada de varios filtros para formar un grafo de filtro.

Una tarjeta de adaptador de audio típica podría contener dispositivos de audio para reproducir una secuencia de onda a través de un conjunto de altavoces, convertir la señal de audio de un micrófono en una secuencia de onda y sintetizar el sonido de una secuencia MIDI. El controlador del adaptador puede encapsular cada uno de estos dispositivos de audio en un filtro KS que expone al sistema operativo. El sistema operativo conecta los filtros a otros filtros para formar gráficos de filtros que procesan secuencias de audio en nombre de los programas de aplicación.

Los filtros KS se conectan juntos a través de sus patillas. Un pin en un filtro de audio se puede considerar como un conector de audio. Un cliente crea una instancia de un pin de entrada o salida en un filtro cuando el cliente necesita enrutar un flujo de datos hacia o hacia fuera de ese filtro. En algunos contextos, los términos pin y stream se pueden usar indistintamente.

El pin de salida del filtro ascendente está conectado al pin de entrada del filtro de bajada. El flujo de datos del pin de salida debe tener un formato de datos que el pin de entrada pueda aceptar. Normalmente, el almacenamiento en búfer de datos es necesario para suavizar las discrepancias momentáneas en las velocidades a las que un pin de salida genera datos y un pin de entrada lo consume.

Un filtro KS se implementa como un objeto de controlador en modo kernel que encapsula cierto número de funciones de procesamiento de secuencias relacionadas. La funcionalidad se puede implementar en software o en hardware. En este modelo, un adaptador de audio se puede ver como una colección de dispositivos de hardware y el controlador del adaptador expone cada uno de estos dispositivos al sistema de audio como filtro individual.

Un controlador de adaptador expone una colección de generadores de filtros al sistema de audio. Cada generador de filtros es capaz de crear instancias de filtros de un tipo determinado:

  • Si el adaptador contiene uno o varios dispositivos similares o idénticos en función, el controlador agrupa los filtros de esos dispositivos en el mismo generador de filtros.

  • Si el adaptador contiene varios tipos diferentes de dispositivos, esos dispositivos se presentan a través de varios generadores de filtros diferentes.

Un filtro KS expone una colección de generadores de patillas al sistema de audio. Cada generador de patillas es capaz de crear instancias de patillas de un tipo determinado. Si el filtro puede proporcionar uno o varios pines similares o idénticos en la función, el filtro agrupa esos patillas en el mismo generador de patillas. Por ejemplo, un filtro que realiza la mezcla de audio podría tener un generador de patillas que pueda crear instancias de un solo pin de salida y un segundo generador de patillas que puedan crear instancias de varios pines de entrada.

Los servicios KS se basan en el modelo de controlador de Windows. Tenga en cuenta que el término filtro KS debe distinguirse del controlador de filtro de términos, que es otro concepto de WDM. Un controlador de filtro reside en una pila de controladores WDM y puede interceptar y modificar los paquetes de solicitud de E/S (IRP) que se propagan a través de la pila. Los controladores de filtro de nivel superior e inferior residen encima y debajo del controlador de función, respectivamente. En esta sección, el término filtro hace referencia a un filtro KS en lugar de a un controlador de filtro a menos que se indique lo contrario. Para obtener más información sobre los controladores de filtro, vea Tipos de controladores WDM.

Esta sección contiene los siguientes temas:

Funciones básicas de un controlador de audio WDM

Opciones del controlador de audio del proveedor

Terminología de audio de WDM

Controladores de audio de ejemplo

KsStudio (Utilidad)

Para obtener actualizaciones e información sobre las nuevas características de la arquitectura de audio de WDM, consulte el sitio web de la tecnología de audio .