Compartir a través de


Windows 10: Novedades de controladores de audio

En este tema se hace un resumen general de las novedades sobre audio de Windows 10.

Resumen de características

Estas son las nuevas características de audio de Windows 10.

Mejoras de audio de baja latencia

La latencia de audio es el retraso entre el momento en que se crea el sonido y cuando se escucha. Tener una latencia de audio baja es muy importante para varios contextos y aplicaciones, como los siguientes.

  • Audio de uso profesional
  • Creación y mezcla de música
  • Comunicaciones, como Skype
  • Realidad virtual y aumentada
  • Juegos

La latencia total de un dispositivo es la suma de las latencias de los siguientes componentes:

  • Sistema operativo
  • Objetos de procesamiento de datos
  • Controlador de audio
  • Hardware de audio

En Windows 10 se han hecho cambios para reducir la latencia en el sistema operativo. Sin ningún cambio de controlador, las aplicaciones de Windows 10 generarían una latencia inferior de 4,5 a 16 ms. Además, si el controlador se ha actualizado para aprovechar las nuevas DDI de baja latencia que usan búferes pequeños para procesar datos de audio, la latencia se reduciría aún más. Si un controlador admite búferes de audio de 3 ms, la latencia de ida y vuelta es de ~10 ms.

Diagrama donde se ve la pila de audio de baja latencia con aplicaciones, el controlador de motor de audio y los componentes de hardware.

La pila de audio admite varios tamaños de paquete y cambio de tamaño dinámico de paquetes, con el fin de optimizar el equilibrio entre la latencia y el consumo de energía en función de cada aplicación de uso del usuario. Además, se priorizarán las transmisiones para garantizar que las transmisiones de alta prioridad (por ejemplo, las llamadas telefónicas) tengan recursos dedicados.

Para que los controladores de audio operen con una latencia baja, Windows 10 incluye las siguientes tres características nuevas:

  1. [Obligatorio] Declarar el tamaño mínimo del búfer que se admite en cada modo.
  2. [Opcional, pero recomendado] Mejorar la coordinación del flujo de datos entre el controlador y el sistema operativo.
  3. [Opcional, pero recomendado] Registrar los recursos del controlador (interrupciones, subprocesos), de modo que se puedan proteger mediante el sistema operativo en casos de baja latencia. Para obtener más información, consulte Audio de baja latencia.

Modos de procesamiento de señal y categorías de audio

Modos de procesamiento de señal

Los controladores declaran los modos de procesamiento de señal de audio admitidos para cada dispositivo.

Las categorías de audio (seleccionadas por las aplicaciones) se asignan a los modos de audio (definidos por los controladores). Windows tiene definidos siete modos de procesamiento de señal de audio. Los OEM y IHV pueden determinar qué modos quieren implementar. Los modos vienen resumidos en la tabla que aparece a continuación.

Mode Renderización/captura Descripción
Sin procesar Ambos El modo sin procesar indica que no debe haber ningún procesamiento de señal aplicado a la transmisión. Una aplicación puede solicitar una transmisión sin procesar que esté completamente intacta y realizar su propio procesamiento de señal.
Predeterminado Ambos Este modo define el procesamiento de audio predeterminado.
Películas* Renderización Reproducción de audio de película
Multimedia* Ambos Reproducción de audio de música (valor predeterminado en la mayoría de las transmisiones multimedia)
Voz* Capture Captura de voz humana (por ejemplo, indicaciones a Cortana)
Comunicaciones* Ambos Renderización y captura de VOIP (por ejemplo, Skype, Lync)
Notificación* Renderización Tonos, alarmas, alertas, etc.

Los controladores de dispositivos de audio deben admitir al menos el modo Sin procesar o Predeterminado. Es posible que se acepten modos adicionales.

Modos dedicados para voz, películas, música y comunicaciones. Los controladores de audio podrán definir diferentes tipos de formatos de audio y procesamiento, en función del tipo de transmisión.

Categorías de audio

En la tabla siguiente figuran las categorías de audio en Windows 10.

Para informar al sistema sobre el uso de una transmisión de audio, las aplicaciones tienen la opción de etiquetarla con una categoría de transmisión de audio específica. En Windows 10 hay nueve categorías de transmisiones de audio.

Category Descripción
Película* Películas, vídeo con cuadro de diálogo (reemplaza a ForegroundOnlyMedia)
Multimedia* Categoría predeterminada para reproducción multimedia (reemplaza a BackgroundCapableMedia)
Chat de juego* Comunicación en el juego entre usuarios (nueva categoría en Windows 10)
Voz* Entrada (por ejemplo, asistente personal) y salida de voz (por ejemplo, aplicaciones de navegación) (nueva categoría en Windows 10)
Comunicaciones VOIP, chat en tiempo real
Alertas Alarma, tono de llamada, notificaciones
Efectos de Sonido Pitidos, timbres, etc.
Elementos multimedia de juegos Música del juego
Efectos de juego Bolas rebotando, ruido de motor de coche, balas, etc.
Otros Transmisiones sin categorizar

* Novedades de Windows 10.

Para obtener más información, consulte Modos de procesamiento de señal de audio y Arquitectura de objetos de procesamiento de audio.

Efectos de APO descargados de hardware

Windows 10 admite efectos de APO descargados de hardware. Los APO se pueden cargar por encima del pin de descarga. Esto permite que el procesamiento de audio se realice tanto en el software como en el hardware. Además, el procesamiento puede cambiar dinámicamente. Algunos o todos los procesos se pueden mover del APO de software al DSP cuando hay suficientes recursos de hardware y luego volver al APO de software cuando aumenta la carga en el DSP.

Para obtener más información, consulte Implementación de efectos de APO descargados de hardware.

Activación por voz de Cortana: Wake on Voice

Cortana, la tecnología de asistente personal se presentó por primera vez en la Microsoft BUILD Developer Conference en 2013. La activación por voz es una característica que permite a los usuarios invocar un motor de reconocimiento de voz a partir de varios estados de energía del dispositivo diciendo una frase específica: "Hey Cortana". La función de activación por voz (VA) "Hey, Cortana" permite a los usuarios interactuar rápidamente con una solución (por ejemplo, Cortana) fuera del contexto activo (es decir, lo que esté actualmente en pantalla) mediante la voz. La característica está destinada a situaciones en las que la pantalla está apagada, inactiva o cuando está totalmente activa. Si el hardware admite el almacenamiento en búfer, los usuarios pueden encadenar la frase clave y la frase del comando. Esto mejora totalmente la función de reactivación Wake on Voice de cara al usuario. Para obtener más información, consulte Activación por voz.

Controladores de audio universales de Windows

Windows 10 admite un modelo de controlador que funciona para PC y 2:1 y Windows 10 para teléfonos y tabletas de pantalla pequeña. Esto significa que los IHV pueden desarrollar su controlador en una plataforma y este funciona en todos los dispositivos (equipos de sobremesa, portátiles, tabletas, teléfonos). Todo esto conlleva menos tiempo de desarrollo y costes más bajos.

Para desarrollar controladores de audio universales, use las siguientes herramientas:

  1. Visual Studio 2015: la nueva configuración del controlador permite cambiar la "Plataforma de destino" a "Universal" para crear un controlador multiplataforma.
  2. APIValidator: se trata de una herramienta de WDK que comprueba si el controlador es universal y destaca las llamadas que deben actualizarse.
  3. Ejemplos de audio en GitHub: El sysvad y SwapAPO se han convertido para ser controladores universales. Para obtener más información y ver punteros del código de ejemplo de GitHub, consulte Controladores de audio universales de Windows.

Administración de recursos para controladores de audio

Hay un dificultad a la hora de crear una óptima experiencia de audio en un dispositivo móvil de bajo coste y es que algunos dispositivos tienen varias restricciones de simultaneidad. Por ejemplo, es posible que el dispositivo solo pueda reproducir hasta 6 transmisiones de audio a la vez y solo admita 2 transmisiones de descarga. Cuando hay una llamada telefónica activa en un dispositivo móvil, es posible que el dispositivo admita solo 2 transmisiones de audio. Cuando el dispositivo captura audio, el dispositivo solo puede reproducir hasta 4 transmisiones de audio.

Windows 10 incluye un mecanismo para expresar restricciones de simultaneidad y garantizar de que las transmisiones de audio de alta prioridad y las llamadas de teléfono móvil puedan reproducirse. Si el sistema no tiene suficientes recursos, se finalizan las transmisiones de baja prioridad. Este mecanismo solo está disponible en teléfonos y tabletas, pero no en equipos de escritorio o portátiles.

Para obtener más información, consulte Administración de recursos de hardware de audio.

Reequilibro PNP para controladores de audio

El reequilibrio PNP se usa en determinados casos de PCI en los que es necesario reasignar los recursos de memoria. En ese caso, algunos controladores se descargan y luego se vuelven a cargar en diferentes ubicaciones de la memoria, con el fin de liberar espacio de memoria contigua. El reequilibrio se puede activar en dos situaciones principales:

  1. Conexión en caliente de PCI: un usuario conecta un dispositivo y el bus PCI no tiene suficientes recursos para cargar el controlador en el nuevo dispositivo. Algunos ejemplos de dispositivos que se encuentran en esta categoría son Thunderbolt, USB-C y almacenamiento NVME. En este escenario, los recursos de memoria deben reorganizarse y consolidarse (reequilibrado) para admitir los dispositivos adicionales que se van a agregar.
  2. BAR redimensionable de PCI: después de cargar correctamente un controlador en un dispositivo en la memoria, se solicitan recursos adicionales. Algunos ejemplos de dispositivos son tarjetas gráficas de gama alta y dispositivos de almacenamiento. Para obtener más información, consulte Implementación del reequilibrio de PnP para controladores de audio PortCls.