AudioOut
AudioOut reproduce PCM del invitado en un dispositivo de Windows a 48 kHz. Los puertos heredados tienen sus propios flujos y colas, de modo que la música y los efectos suenan juntos, y un underrun conserva el orden de las muestras.
Notas del repositorio hasta el 10 de octubre de 2026
Puertos y el dispositivo del anfitrión
Un título envía un búfer y espera que la llamada dure aproximadamente lo que suena el búfer. Esa espera viene de que el dispositivo del anfitrión hace sitio, no de un sueño que tira las muestras. AudioOut, AudioIn y AudioOut2 exponen puertos ritmados, colas, metadatos de altavoces y el estado de primario conectado. Un lote valida cada puerto y después envía el cuanto audible una sola vez, de modo que un puerto auxiliar silencioso no multiplica la duración.
Los puertos heredados de AudioOut poseen flujos de Windows y colas de PCM distintos. La música y los efectos pueden sonar a la vez. La salida del lote envía cada puerto activo. Tras un underrun, el anillo activo conserva el orden de las muestras, y un fundido corto quita el chasquido al reanudar. El dispositivo WinMM hace un pre-roll del PCM real y usa un periodo de temporizador de un milisegundo.
Latencia
La reserva ordinaria empieza en 42 ms y crece en pasos de cuatro búferes, hasta unos 170 ms, solo cuando el título en ejecución deja de verdad al dispositivo sin muestras. El perfil medido de PPSA25872 empieza en 128 ms porque su mezclador puede pausar unos 100 a 120 ms durante el arranque y el trabajo de escena. Esa reserva mayor no se impone a otros títulos.
Las muestras no finitas se sustituyen antes de llegar al dispositivo. Ese saneador protege los altavoces. No puede reparar un filtro que ya almacenó un NaN. La página de ACM describe el fallo de convolución que producía esos valores en Subnautica.
Dónde existe la salida
No abrir un dispositivo no se informa al título. Una tarjeta de sonido ausente es un hecho del anfitrión. Quien llama cae a una espera silenciosa ritmada para que el tiempo del título siga avanzando. Ocurre lo mismo si el dispositivo muere a mitad de la ejecución. La salida está implementada en Windows. Las demás compilaciones mantienen los puertos en silencio y con el ritmo correcto.
La mezcla directa de respaldo de los clips de vista previa descodificados está apagada de forma predeterminada. Reproducir una vista previa junto a la mezcla AudioOut propia del título se oye como un eco. PS5_AUDIO_FALLBACK_MIX=1 enciende esa mezcla. El lanzador puede silenciar el dispositivo con su ajuste de sonido, que llega como PS5_AUDIO_DISABLED.
Qué está implementado
- Reproducción del anfitrión a 48 kHz con puertos ritmados de AudioOut, AudioIn y AudioOut2.
- Flujos de Windows distintos para los puertos heredados, de modo que la música y los efectos simultáneos conservan el orden.
- Una reserva que empieza en 42 ms y solo crece cuando el dispositivo se queda sin muestras, hasta unos 170 ms.
- Sustitución de muestras no finitas, y una alternativa silenciosa y ritmada cuando no se abre ningún dispositivo.
Qué falta todavía
- La salida del anfitrión es solo para Windows.
- La vibración del mando no se gobierna desde una pista háptica de audio.
- El saneador no reconstruye un historial de filtro que ya estaba envenenado.
Mecanismos relacionados
Qué describen estas páginas