Compartir a través de


Consideraciones sobre la topología de KS

El controlador del sistema WDMAud (Wdmaud.sys) convierte la topología de filtro KS en las líneas de mezclador heredadas que se exponen a través de la API de mezclador . Una patilla que no sea PCM corresponde a una línea SRC (MIXERLINE_COMPONENTTYPE_SRC_XXX) en la API de mezclador. Si este pin está en una ruta de acceso de datos que finalmente fluye a un pin de puente (la conexión física en el punto de conexión de un grafo) que está dedicada a datos que no son PCM, la API mezcladora expone el pin de puente como una línea DST adicional (MIXERLINE_COMPONENTTYPE_DST_XXX), independiente de la línea DST para los datos PCM. Esto puede agregar complejidad innecesaria a los controles que son visibles a través de un cliente mezclador-API, como un reemplazo de la utilidad SndVol32.

Si prefiere no exponer un pin que no sea PCM de esta manera, un enfoque consiste en asegurarse de que la ruta de acceso de datos que contiene el pin finalmente se alimenta en un nodo SUM compartido por la ruta de acceso de datos de PCM. Es decir, una la línea DST no PCM a la línea DST principal. Desafortunadamente, esta solución alternativa representa erróneamente la verdadera topología de hardware y podría provocar problemas futuros con los clientes que intentan controlar el flujo de datos que no es pcM a través de nodos de bajada desde el nodo SUM. Un mejor enfoque es modificar el cliente mixer-API para simplemente omitir las líneas SRC y DST que no tienen controles.

Si usa la utilidad KsStudio para ver el filtro de onda en KSCATEGORY_AUDIO, debería esperar ver un pin independiente para los datos que no son PCM. Al ver el gráfico de audio del sistema compuesto en KSCATEGORY_AUDIO_DEVICE, debería ver los intervalos de datos que no son PCM en el pin principal de salida de onda, junto con los intervalos de datos PCM.

SysAudio (Sysaudio.sys) es el dispositivo de audio del sistema en Windows Server 2003, Windows XP, Windows 2000 y Windows Me/98. Tenga en cuenta que SysAudio genera KSCATEGORY_AUDIO_DEVICE automáticamente, un controlador no debe registrarse manualmente en esta categoría.

No es necesario conectar una ruta de acceso de datos que no sea PCM al controlador de miniporte de topología. Esta conexión es de ventaja solo si la ruta de acceso de datos que no es PCM interactúa con el resto de la topología del dispositivo; por ejemplo, si se alimenta en un mezclador común o convertidor de frecuencia de muestreo. La conexión de un pin de streaming a un pin de puente, donde ambos pines están en el controlador de minipuerto de onda, forma una topología válida y completa para un flujo de datos que no es PCM que fluye directamente a un puerto S/PDIF, por ejemplo.