AIDL Аудио HAL

Начиная с Android 14, интерфейс Audio HAL определяется с помощью Stable AIDL . Партнерам и поставщикам SoC рекомендуется переопределить свой Audio HAL, чтобы обеспечить интерфейс AIDL.

Расширение библиотеки libaudiohal добавляет поддержку AIDL HAL. При реализации AIDL спецификация конфигурации политики аудио переносится в AIDL HAL. Благодаря этому изменению диспетчер политики аудио (APM) получает конфигурацию из HAL, а не из XML-файла, предоставленного поставщиком.

Аудио AIDL HAL API

В этом разделе описываются основные API-интерфейсы HAL, эффекты и общие API-интерфейсы HAL для AIDL.

Используйте реализацию AIDL API по умолчанию в /hardware/interfaces/audio/aidl/default/ в качестве справочной информации при реализации новых версий Audio HAL, которые взаимодействуют с драйверами ядра.

См. файл README Audio HAL для получения информации о структуре каталогов Audio HAL для AIDL.

Базовый HAL

Вот некоторые из ключевых интерфейсов Core HAL , использующих AIDL:

Эффекты ХАЛ

Вот некоторые из ключевых интерфейсов Effects HAL, использующих AIDL:

  • IFactory.aidl — это точка входа в API.
  • Descriptor.aidl содержит всю информацию, такую ​​как возможности и атрибуты для реализации эффекта.
  • Capability.aidl определяет возможности эффектов, которые не изменяются во время выполнения.
  • Parameter.aidl определяет все параметры, поддерживаемые экземпляром эффекта.
  • IEffect.aidl используется для настройки и управления конкретными экземплярами эффектов.
  • Участки, специфичные для эффекта, названные в честь эффекта.

  • Последняя версия Effects HAL API, находящаяся в разработке , находится в /hardware/interfaces/audio/aidl/android/hardware/audio/effect/ .

  • Последняя выпущенная версия Effects HAL API находится в /hardware/interfaces/audio/aidl/aidl_api/android.hardware.audio.effect .

Дополнительную информацию см. в разделе «Аудиоэффекты» .

Общий HAL

Структуры данных и интерфейсы, совместно используемые различными HAL, такими как BT HAL, ядро ​​и эффекты. Аудио HAL находятся в общем HAL.

Общие стабильные типы данных

Определения стабильных структур данных используются как HAL, так и платформой.

Тестирование аудио AIDL HAL API

Для интерфейса AIDL предусмотрены новые тесты VTS .

В новой версии HAL нет изменений, которые могли бы повлиять на безопасность.