diff --git a/audio/akita/aidl_config/Android.bp b/audio/akita/aidl_config/Android.bp new file mode 100644 index 0000000..630183f --- /dev/null +++ b/audio/akita/aidl_config/Android.bp @@ -0,0 +1,63 @@ +// Copyright (C) 2024 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +soong_namespace { + imports: [ + "frameworks/av/services/audiopolicy/config", + ], +} + +package { + default_applicable_licenses: [ + "Android-Apache-2.0", + ], +} + +prebuilt_etc { + name: "audio_policy_volumes.xml", + src: "audio_policy_volumes.xml", + soc_specific: true, +} + +prebuilt_etc { + name: "imported_default_volume_tables.xml", + src: "//frameworks/av/services/audiopolicy/config:default_volume_tables.xml", + soc_specific: true, + filename_from_src: true, +} + +prebuilt_etc { + name: "audio_platform_configuration.xml", + src: "audio_platform_configuration.xml", + soc_specific: true, + required: [ + "audio_policy_volumes.xml", + "imported_default_volume_tables.xml", + ], +} + +prebuilt_etc { + name: "mixer_paths_aidl.xml", + src: "mixer_paths_aidl.xml", + soc_specific: true, +} + +phony { + name: "audio_aidl_configs", + soc_specific: true, + required: [ + "audio_platform_configuration.xml", + "mixer_paths_aidl.xml", + ], +} diff --git a/audio/akita/aidl_config/audio_platform_configuration.xml b/audio/akita/aidl_config/audio_platform_configuration.xml new file mode 100644 index 0000000..f864b87 --- /dev/null +++ b/audio/akita/aidl_config/audio_platform_configuration.xml @@ -0,0 +1,112 @@ + + + + + + + + + + + + + + + + + + + + + + + + + 0.01 + 0.02 + 0.04 + 0.10 + 0.21 + 0.47 + 1.00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MIC + CAMCORDER + + + MIC + CAMCORDER + + + + + + diff --git a/audio/akita/aidl_config/audio_policy_volumes.xml b/audio/akita/aidl_config/audio_policy_volumes.xml new file mode 100644 index 0000000..8a138a0 --- /dev/null +++ b/audio/akita/aidl_config/audio_policy_volumes.xml @@ -0,0 +1,265 @@ + + + + + + + 0,-4200 + 33,-2800 + 66,-1400 + 100,0 + + + 0,-2400 + 33,-1600 + 66,-800 + 100,0 + + + 0,-2400 + 33,-1600 + 66,-800 + 100,0 + + + + + 1,-3000 + 33,-2600 + 66,-2200 + 100,-1800 + + + 1,-5200 + 13,-5000 + 28,-4400 + 56,-3380 + 71,-3120 + 85,-2750 + 100,-2150 + + + + + + + 1,-4935 + 14,-3320 + 28,-2960 + 71,-1400 + 100,0 + + + + + + + 1,-6920 + 4,-6920 + 8,-6664 + 12,-6374 + 16,-6082 + 20,-5759 + 24,-5410 + 28,-5038 + 32,-4807 + 36,-4577 + 40,-4339 + 44,-4132 + 48,-3860 + 52,-3569 + 56,-3223 + 60,-2823 + 64,-2452 + 68,-2078 + 72,-1795 + 76,-1561 + 80,-1226 + 84,-956 + 88,-789 + 92,-635 + 96,-505 + 100,0 + + + + + + + 0,-5600 + 14,-4670 + 28,-3060 + 71,-1050 + 100,-100 + + + + + + + 1,-6350 + 14,-4300 + 28,-3710 + 66,-2100 + 85,-1550 + 100,-780 + + + + + + 0,-4200 + 33,-2800 + 66,-1400 + 100,0 + + + 0,-2400 + 33,-1600 + 66,-800 + 100,0 + + + 0,-4200 + 33,-2800 + 66,-1400 + 100,0 + + + + + 1,-3000 + 33,-2600 + 66,-2200 + 100,-1800 + + + 1,-5200 + 13,-5000 + 28,-4400 + 56,-3380 + 71,-3120 + 85,-2750 + 100,-2150 + + + + + + 1,-3000 + 33,-2600 + 66,-2200 + 100,-1800 + + + 1,-6600 + 13,-6220 + 28,-5500 + 42,-4600 + 57,-4250 + 100,-2780 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/audio/akita/aidl_config/mixer_paths_aidl.xml b/audio/akita/aidl_config/mixer_paths_aidl.xml new file mode 100644 index 0000000..8943c9e --- /dev/null +++ b/audio/akita/aidl_config/mixer_paths_aidl.xml @@ -0,0 +1,1507 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/audio/akita/audio-tables.mk b/audio/akita/audio-tables.mk index 65242e8..e18e4aa 100644 --- a/audio/akita/audio-tables.mk +++ b/audio/akita/audio-tables.mk @@ -16,6 +16,11 @@ AUDIO_TABLE_FOLDER := akita +ifeq ($(USE_AUDIO_HAL_AIDL),true) +PRODUCT_SOONG_NAMESPACES += device/google/akita/audio/$(AUDIO_TABLE_FOLDER)/aidl_config +PRODUCT_PACKAGES += audio_aidl_configs + +else # Platform Configuration for AudioHAL / SoundTriggerHAL PRODUCT_COPY_FILES += \ device/google/akita/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \ @@ -27,6 +32,8 @@ PRODUCT_COPY_FILES += \ device/google/akita/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_le_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_le_offload_disabled.xml \ frameworks/av/services/audiopolicy/config/bluetooth_with_le_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml +endif + # AudioEffectHAL Configuration PRODUCT_COPY_FILES += \ device/google/akita/audio/$(AUDIO_TABLE_FOLDER)/config/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml @@ -76,3 +83,13 @@ PRODUCT_COPY_FILES += \ device/google/akita/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/test_preset.mps endif + +ifeq ($(USE_AUDIO_HAL_AIDL),true) +# Offload spatializer config +PRODUCT_COPY_FILES += \ + device/google/akita/audio/$(AUDIO_TABLE_FOLDER)/tuning/spatializer/base:$(TARGET_COPY_OUT_VENDOR)/etc/spatializer/base \ + device/google/akita/audio/$(AUDIO_TABLE_FOLDER)/tuning/spatializer/mode_2_ch:$(TARGET_COPY_OUT_VENDOR)/etc/spatializer/mode_2_ch \ + device/google/akita/audio/$(AUDIO_TABLE_FOLDER)/tuning/spatializer/mode_6_ch:$(TARGET_COPY_OUT_VENDOR)/etc/spatializer/mode_6_ch \ + device/google/akita/audio/$(AUDIO_TABLE_FOLDER)/tuning/spatializer/mode_xaural:$(TARGET_COPY_OUT_VENDOR)/etc/spatializer/mode_xaural \ + +endif diff --git a/audio/akita/tuning/spatializer/base b/audio/akita/tuning/spatializer/base new file mode 100644 index 0000000..38cc646 Binary files /dev/null and b/audio/akita/tuning/spatializer/base differ diff --git a/audio/akita/tuning/spatializer/mode_2_ch b/audio/akita/tuning/spatializer/mode_2_ch new file mode 100644 index 0000000..470c56c Binary files /dev/null and b/audio/akita/tuning/spatializer/mode_2_ch differ diff --git a/audio/akita/tuning/spatializer/mode_6_ch b/audio/akita/tuning/spatializer/mode_6_ch new file mode 100644 index 0000000..94ec635 Binary files /dev/null and b/audio/akita/tuning/spatializer/mode_6_ch differ diff --git a/audio/akita/tuning/spatializer/mode_xaural b/audio/akita/tuning/spatializer/mode_xaural new file mode 100644 index 0000000..b3a3a96 Binary files /dev/null and b/audio/akita/tuning/spatializer/mode_xaural differ diff --git a/device-akita.mk b/device-akita.mk index 51502a8..585ab22 100644 --- a/device-akita.mk +++ b/device-akita.mk @@ -34,6 +34,10 @@ $(call inherit-product-if-exists, vendor/google_devices/akita/proprietary/Wallpa DEVICE_PACKAGE_OVERLAYS += device/google/akita/akita/overlay +ifeq ($(RELEASE_PIXEL_AIDL_AUDIO_HAL_ZUMA),true) +USE_AUDIO_HAL_AIDL := true +endif + include device/google/akita/audio/akita/audio-tables.mk include device/google/zuma/device-shipping-common.mk include hardware/google/pixel/vibrator/cs40l26/device.mk @@ -260,6 +264,17 @@ endif PRODUCT_PRODUCT_PROPERTIES += \ bluetooth.server.automatic_turn_on=true +ifeq ($(USE_AUDIO_HAL_AIDL),true) +# AIDL + +# declare use of stereo spatialization +PRODUCT_PROPERTY_OVERRIDES += \ + ro.audio.stereo_spatialization_enabled=true \ + ro.audio.spatializer_enabled=true + +else +# HIDL + # Spatial Audio PRODUCT_PACKAGES += \ libspatialaudio \ @@ -270,6 +285,8 @@ PRODUCT_PACKAGES += \ android.hardware.audio.sounddose-vendor-impl \ audio_sounddose_aoc \ +endif + # Audio CCA property PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.audio.cca.enabled=false