platform_hardware_interfaces/audio
jiabin fdee322c96 AHAL: fix StreamUsb crash.
1. By default, the DriverUsb should be standby. When there is data
   transfer request, it will exit standby.
2. Initialize alsa device profile before reading device info.
3. Open the alsa device proxy after the preparation succeed.

Bug: 266216550
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I1f0425036df176c52220320135079e7c98daa2d0
2023-03-22 22:16:13 +00:00
..
2.0 [LSC] Add LOCAL_LICENSE_KINDS to hardware/interfaces 2021-02-23 14:26:20 -08:00
4.0 [LSC] Add LOCAL_LICENSE_KINDS to hardware/interfaces 2021-02-23 14:26:20 -08:00
5.0 [LSC] Add LOCAL_LICENSE_KINDS to hardware/interfaces 2021-02-23 14:26:20 -08:00
6.0 [LSC] Add LOCAL_LICENSE_KINDS to hardware/interfaces 2021-02-23 14:26:20 -08:00
7.0 audio: Fix parsing of arguments in the APM config update script am: b9e244dfc7 am: 188d6412b0 2021-06-11 22:06:36 +00:00
7.1 Make AUDIO_USAGE_NOTIFICATION_EVENT available to HALs 2022-02-12 00:03:49 +00:00
aidl AHAL: fix StreamUsb crash. 2023-03-22 22:16:13 +00:00
common audio: Add vendor tags handling for AIDL 2023-03-08 17:40:35 -08:00
core/all-versions audio: Remove InputStreamTest#getCapturePosition test 2023-02-24 09:57:16 -08:00
effect Effect: Move thread priority updates from threadLoop 2023-01-13 13:48:48 -08:00
policy/1.0 audio: clean up OWNERS 2022-12-29 23:22:02 +00:00
OWNERS audio: clean up OWNERS 2022-12-29 23:22:02 +00:00
README.md audio: Update README.md to add info about the AIDL version 2023-01-20 21:54:17 +00:00

Audio HAL

Directory structure of the audio HAL related code.

Run common/all-versions/copyHAL.sh to create a new version of the audio HAL based on an existing one.

Directory Structure

  • 2.0 — version 2.0 of the core HIDL API. Note that .hal files can not be moved into the core directory because that would change its namespace and include path.
    • config — the XSD schema for the Audio Policy Manager configuration file.
  • 4.0 — version 4.0 of the core HIDL API.
  • ...
  • common — common types for audio core and effect HIDL API.
    • 2.0 — version 2.0 of the common types HIDL API.
    • 4.0 — version 4.0.
    • ...
    • 7.0 — version 7.0.
      • example — example implementation of the core and effect V7.0 API. It represents a "fake" audio HAL that doesn't actually communicate with hardware.
    • all-versions — code common to all version of both core and effect API.
      • default — shared code of the default implementation.
        • service — vendor HAL service for hosting the default implementation.
      • test — utilities used by tests.
      • util — utilities used by both implementation and tests.
  • core — VTS tests and the default implementation of the core API (not HIDL API, it's in audio/N.M).
    • 7.0 — code specific to version V7.0 of the core HIDL API
    • all-versions — the code is common between all versions, version-specific parts are enclosed into conditional directives of preprocessor or reside in dedicated files.
      • default — code that wraps the legacy API (from hardware/libhardware).
        • util — utilities for the default implementation.
      • vts VTS tests for the core HIDL API.
  • effect — same for the effect HIDL API.
    • 2.0
      • config — the XSD schema for the Audio Effects configuration file.
    • 4.0
    • ...
    • all-versions
      • default — code that wraps the legacy API (from hardware/libhardware).
        • util — utilities for the default implementation.
      • vts VTS tests for the effect HIDL API.
  • policy — Configurable Audio Policy schemes.
    • 1.0 — note that versions of CAP are not linked to the versions of audio HAL.
      • vts — VTS tests for validating actual configuration files.
      • xml — XSD schemas for CAP configuration files.