Sincronizar dos o más secuencias

La rutina SetDmaEngineState establece el estado de uno o varios motores DMA en uno de los siguientes: en ejecución, en pausa, detenido o restablecido. Si una llamada a esta rutina especifica más de un motor DMA, todos los motores DMA realizan la transición de estado de forma sincrónica.

Se requiere la capacidad de sincronizar un grupo de secuencias para algunas aplicaciones de audio. Por ejemplo, un controlador de audio podría usar la combinación de códecs para crear un dispositivo lógico de audio envolvente que une dos códecs de audio: un códec controla los altavoces frontales y un segundo códec de audio controla los altavoces posteriores. En función de las funcionalidades de los códecs, el controlador de audio podría ser necesario para dividir la secuencia de audio de sonido envolvente original en dos secuencias, una para cada códec. Mediante el uso de la rutina SetDmaEngineState para iniciar y detener las secuencias en unísono, las dos secuencias pueden permanecer sincronizadas.

Permitir que las dos secuencias se agoten de la sincronización por incluso algunos ejemplos pueden provocar artefactos de audio no deseados.

La rutina SetDmaEngineState está disponible en ambas versiones de la DDI de audio HD.

El controlador de clase UAA HD Audio no realiza la combinación de códecs.