Diagnóstico y gestión del problema de abandonos en CoreAudio de Apple (HALS_OverloadMessage)
This article contains troubleshooting information
HALS_OverloadMessage.cpp
HALS_OverloadMessage: Overload possibly due to HAL client proc exceeding io cycle budget
Desde el lanzamiento del sistema operativo Monterey de Apple, han tenido problemas con su proceso CoreAudio, cuando el sistema tiene un uso de memoria (RAM) moderadamente alto. Según numerosos informes y nuestras propias pruebas, parece que este problema es especialmente evidente en los chips Apple Silicon de la serie M (M1, M2, M3).
En algunos sistemas, el problema puede presentarse al utilizar Source-Nexus Gateway o cualquier otro software de audio.
Apple está trabajando actualmente en el problema, pero al momento de escribir este artículo no hay ninguna solución implementada en la versión actual (Sonoma 14.3).
¿Cómo se presenta el problema?
El proceso CoreAudio gestiona la transferencia de audio entre aplicaciones en el sistema operativo y sus dispositivos de audio. Cuando el uso de RAM en Mac es alto, el proceso CoreAudio no cumple con sus plazos y elimina el audio. Esto puede presentarse como abandonos, crepitaciones o fallos e impulsos no deseados.
¿Cómo puedo diagnosticar el problema?
Una forma rápida de diagnosticar el problema es ver si las interrupciones ocurren en múltiples aplicaciones o dispositivos de audio.
Por ejemplo, si experimentas interrupciones con Source-Nexus Gateway que no pueden explicarse por una mala conexión, un tamaño de búfer demasiado bajo o una tasa de bits demasiado alta, puedes reproducir audio a través de otra aplicación (por ejemplo, Youtube, Spotify) y luego cargar Source-Nexus Gateway y seguir los pasos que provocaron abandonos antes. Si el audio en las otras aplicaciones también se interrumpe, puedes estar bastante seguro de que el problema está en CoreAudio.
Si deseas una forma avanzada, pero más segura, de diagnosticar los problemas, puedes seguir estos pasos:
- Abre la aplicación “Console.app”
- Haz clic en “Start streaming”.
- Haz clic en la pestaña de “Errors & Warnings” (verás muchas advertencias, es normal).
- Haz clic en la barra de búsqueda y elimina los filtros que haya.
- Busca por “hals”.
- Desencadena el comportamiento varias veces. Deberías ver mensajes de error llamados "HALS_OverloadMessage" en el registro cuando se producen las interrupciones (a veces puede pasar un minuto antes de que aparezcan, la marca de tiempo antes del error mostrará la hora real en que ocurrió).
¿Qué puedo hacer para resolverlo?
Actualmente, Apple no conoce una forma de solucionar completamente el problema, pero puedes intentar lo siguiente:
- Ve si puedes reducir el uso de memoria de su computadora. Por ejemplo, si hay muchas pestañas del navegador abiertas o software inactivo que no necesitas durante la sesión, ciérralos.:
- Si tu DAW ya está consumiendo demasiada memoria, ve si puedes ejecutar la sesión con una versión simplificada del proyecto (sin complementos pesados activos, solo grabando sobre una exportación rebotada de tu proyecto) para reducir el uso de memoria.