HAL de audio

La capa de abstracción de hardware de audio (HAL) de Android conecta las API de marco de audio específicas de nivel superior en android.media , los controladores de audio y el hardware subyacentes. Audio HAL define la interfaz estándar a la que llaman los servicios de audio. Se debe implementar Audio HAL para que el hardware de audio funcione correctamente.

Esta página ofrece una descripción general de Audio HAL y proporciona detalles de su API y requisitos de implementación.

Interfaz de audio HAL

A partir de Android 14, la interfaz Audio HAL se define mediante AIDL . Para versiones anteriores, la interfaz Audio HAL se define mediante HIDL . Se anima a los socios y proveedores de SoC a reimplementar su Audio HAL para proporcionar una interfaz AIDL.

Las nuevas API HAL para funciones agregadas en Android 14 y versiones posteriores solo son compatibles con la implementación de la interfaz AIDL. A partir de Android 14, no se agrega ninguna API nueva a la implementación de HIDL.

Cambiar a AIDL y desaprobar y eliminar la compatibilidad con versiones anteriores de Audio HAL libera espacio en disco y RAM en los dispositivos. Esto conduce a una experiencia de usuario más fluida y permite funciones más nuevas visibles para los usuarios finales.

Consulte Comparación de AIDL y HIDL Audio HAL para obtener más información sobre las diferencias entre AIDL y HIDL Audio HAL.

API HAL de audio

Audio HAL contiene las siguientes API:

  • Core HAL es la API principal utilizada por AudioFlinger para reproducir audio y controlar el enrutamiento de audio.
  • El marco de efectos utiliza la API Effects HAL para controlar los efectos de audio. También puede configurar efectos de preprocesamiento , como control automático de ganancia y supresión de ruido, a través de la API Effects HAL.

  • La API HAL común es una biblioteca de tipos de datos comunes utilizados por las API HAL Core y Effects. Common HAL no tiene interfaces ni pruebas VTS asociadas, ya que solo define estructuras de datos.

Consulte AIDL Audio HAL y HIDL Audio HAL para obtener detalles específicos relacionados con AIDL y HIDL respectivamente.

Requisitos

Además de implementar Audio HAL y crear el archivo de configuración de política de audio, debe cumplir con los siguientes requisitos de HAL:

  • Si la captura para Sound Trigger (captura desde el búfer DSP de palabras activas) es compatible con un perfil de entrada, la implementación debe admitir la cantidad de transmisiones activas en este perfil correspondiente a la cantidad de sesiones simultáneas admitidas por Sound Trigger HAL.

  • Simultaneidad de transmisión de llamadas de voz y captura desde el procesador de la aplicación, como se detalla en la página Captura simultánea .