Enable the spatial audio function
Bug: 248470366 Test: manual Signed-off-by: Yung Ti Su <andysu@google.com> Change-Id: Ie1282d6550052c4bffacaa0b88388bbabe73a208 Merged-In: Ie1282d6550052c4bffacaa0b88388bbabe73a208
This commit is contained in:
parent
27f860edd6
commit
95a10f74ae
9 changed files with 102 additions and 17 deletions
|
@ -23,7 +23,7 @@ PRODUCT_COPY_FILES += \
|
|||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_a2dp_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_a2dp_offload_disabled.xml \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/audio_platform_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_configuration.xml \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/sound_trigger_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_configuration.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
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/bluetooth_with_le_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml
|
||||
|
||||
# AudioEffectHAL Configuration
|
||||
PRODUCT_COPY_FILES += \
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
<library name="proxy" path="libeffectproxy.so"/>
|
||||
<library name="offload_effect" path="liboffloadeffect.so"/>
|
||||
<library name="haptic_generator" path="libhapticgenerator.so"/>
|
||||
<library name="spatializer" path="libspatialaudio.so"/>
|
||||
</libraries>
|
||||
<effects>
|
||||
<effectProxy name="bassboost" library="proxy" uuid="2f0871a2-c93c-4824-9664-42eb2909f2ef">
|
||||
|
@ -51,6 +52,7 @@
|
|||
<effect name="ns" library="offload_effect" uuid="62ff2836-d050-43c3-9c2d-94a73dad2c64"/>
|
||||
<effect name="haptic_generator" library="haptic_generator" uuid="97c4acd1-8b82-4f2f-832e-c2fe5d7a9931"/>
|
||||
<effect name="dynamics_processing" library="dynamics_processing" uuid="e0e6539b-1781-7261-676f-6d7573696340"/>
|
||||
<effect name="spatializer" library="spatializer" uuid="cc4677de-ff72-11eb-9a03-0242ac130003"/>
|
||||
</effects>
|
||||
<postprocess>
|
||||
</postprocess>
|
||||
|
|
|
@ -182,7 +182,8 @@
|
|||
<usecase id="UC_DEEP_BUFFER_PLAYBACK" dev1="5" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="4"/>
|
||||
<!-- dev1: voice-call downlink dev2: voice-clal uplink -->
|
||||
<usecase id="UC_VOICE_CALL" dev1="4" dev2="11"/>
|
||||
<usecase id="UC_IMMERSIVE_PLAYBACK" dev1="3"/>
|
||||
<!-- for output with flag AUDIO_OUTPUT_SPATIALIZER -->
|
||||
<usecase id="UC_IMMERSIVE_PLAYBACK" dev1="30" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="3"/>
|
||||
<!-- for output with AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD, 4 * 128KB buffer -->
|
||||
<usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" dev1="6" dyn_path="true" dsp_vol="true" mmap="false" period="131072" period_num="4" pre_proc_id="14"/>
|
||||
<!-- dev1: audio dev2: haptic -->
|
||||
|
@ -218,6 +219,10 @@
|
|||
<be_cfg be_id="OUT_A2DP_BE_CFG" latency="180000"/>
|
||||
</usecase>
|
||||
|
||||
<usecase id="UC_IMMERSIVE_PLAYBACK" type="playback">
|
||||
<be_cfg be_id="OUT_A2DP_BE_CFG" latency="100000"/>
|
||||
</usecase>
|
||||
|
||||
<usecase id="UC_AUDIO_RECORD" type="capture">
|
||||
<be_cfg be_id="IN_CAMCORDER_LANDSCAPE_BE_CFG" latency="160000"/>
|
||||
<be_cfg be_id="IN_CAMCORDER_INVERT_LANDSCAPE_BE_CFG" latency="160000"/>
|
||||
|
|
|
@ -63,8 +63,8 @@
|
|||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_FAST AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
<mixPort name="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_SPATIALIZER">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="incall playback" role="source"
|
||||
|
@ -154,17 +154,17 @@
|
|||
<devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source">
|
||||
</devicePort>
|
||||
<devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink"
|
||||
encodedFormats="AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
||||
encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink"
|
||||
encodedFormats="AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
||||
encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink"
|
||||
encodedFormats="AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
||||
encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
|
|
|
@ -63,8 +63,8 @@
|
|||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_FAST AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
<mixPort name="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_SPATIALIZER">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="incall playback" role="source"
|
||||
|
|
|
@ -63,10 +63,6 @@
|
|||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_FAST AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="incall playback" role="source"
|
||||
flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
|
|
|
@ -0,0 +1,71 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Bluetooth Audio HAL Audio Policy Configuration file -->
|
||||
<module name="bluetooth" halVersion="2.0">
|
||||
<mixPorts>
|
||||
<!-- A2DP Audio Ports -->
|
||||
<mixPort name="a2dp output" role="source" flags="AUDIO_OUTPUT_FLAG_SPATIALIZER"/>
|
||||
<!-- Hearing AIDs Audio Ports -->
|
||||
<mixPort name="hearing aid output" role="source">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="24000 16000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<!-- Le Audio Audio Ports -->
|
||||
<mixPort name="le audio output" role="source" flags="AUDIO_OUTPUT_FLAG_SPATIALIZER">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="le audio input" role="sink">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="8000 16000 24000 32000 44100 48000"
|
||||
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_24_BIT_PACKED"
|
||||
samplingRates="8000 16000 24000 32000 44100 48000"
|
||||
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
|
||||
samplingRates="8000 16000 24000 32000 44100 48000"
|
||||
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
|
||||
</mixPort>
|
||||
</mixPorts>
|
||||
<devicePorts>
|
||||
<!-- A2DP Audio Ports -->
|
||||
<devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000 88200 96000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000 88200 96000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000 88200 96000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<!-- Hearing AIDs Audio Ports -->
|
||||
<devicePort tagName="BT Hearing Aid Out" type="AUDIO_DEVICE_OUT_HEARING_AID" role="sink"/>
|
||||
<!-- BLE Audio Ports -->
|
||||
<devicePort tagName="BLE Headset Out" type="AUDIO_DEVICE_OUT_BLE_HEADSET" role="sink"/>
|
||||
<devicePort tagName="BLE Speaker Out" type="AUDIO_DEVICE_OUT_BLE_SPEAKER" role="sink"/>
|
||||
<devicePort tagName="BLE Headset In" type="AUDIO_DEVICE_IN_BLE_HEADSET" role="source"/>
|
||||
</devicePorts>
|
||||
<routes>
|
||||
<route type="mix" sink="BT A2DP Out"
|
||||
sources="a2dp output"/>
|
||||
<route type="mix" sink="BT A2DP Headphones"
|
||||
sources="a2dp output"/>
|
||||
<route type="mix" sink="BT A2DP Speaker"
|
||||
sources="a2dp output"/>
|
||||
<route type="mix" sink="BT Hearing Aid Out"
|
||||
sources="hearing aid output"/>
|
||||
<route type="mix" sink="BLE Headset Out"
|
||||
sources="le audio output"/>
|
||||
<route type="mix" sink="le audio input"
|
||||
sources="BLE Headset In"/>
|
||||
<route type="mix" sink="BLE Speaker Out"
|
||||
sources="le audio output"/>
|
||||
</routes>
|
||||
</module>
|
|
@ -131,6 +131,7 @@
|
|||
<ctl name="TDM_0_RX Mixer NoHost1" value="0"/>
|
||||
<ctl name="TDM_0_RX Mixer VOIP" value="0"/>
|
||||
<ctl name="TDM_0_RX Mixer RAW" value="0"/>
|
||||
<ctl name="TDM_0_RX Mixer IMSV" value="0"/>
|
||||
|
||||
<ctl name="TDM_1_RX Mixer EP1" value="0"/>
|
||||
<ctl name="TDM_1_RX Mixer EP2" value="0"/>
|
||||
|
@ -153,6 +154,7 @@
|
|||
<ctl name="USB_RX Mixer VOIP" value="0"/>
|
||||
<ctl name="USB_RX Mixer HIFI" value="0"/>
|
||||
<ctl name="USB_RX Mixer RAW" value="0"/>
|
||||
<ctl name="USB_RX Mixer IMSV" value="0"/>
|
||||
|
||||
<ctl name="BT_RX Mixer EP1" value="0"/>
|
||||
<ctl name="BT_RX Mixer EP2" value="0"/>
|
||||
|
@ -163,6 +165,7 @@
|
|||
<ctl name="BT_RX Mixer EP7" value="0"/>
|
||||
<ctl name="BT_RX Mixer NoHost1" value="0"/>
|
||||
<ctl name="BT_RX Mixer VOIP" value="0"/>
|
||||
<ctl name="BT_RX Mixer IMSV" value="0"/>
|
||||
|
||||
<ctl name="INCALL_RX Mixer EP1" value="0"/>
|
||||
<ctl name="INCALL_RX Mixer EP2" value="0"/>
|
||||
|
@ -442,15 +445,15 @@
|
|||
</path>
|
||||
|
||||
<path name="immersive-playbackP">
|
||||
<ctl name="TDM_0_RX Mixer EP4" value="1"/>
|
||||
<ctl name="TDM_0_RX Mixer IMSV" value="1"/>
|
||||
</path>
|
||||
|
||||
<path name="immersive-playbackP bt">
|
||||
<ctl name="BT_RX Mixer EP4" value="1"/>
|
||||
<ctl name="BT_RX Mixer IMSV" value="1"/>
|
||||
</path>
|
||||
|
||||
<path name="immersive-playbackP usb-headphone">
|
||||
<ctl name="USB_RX Mixer EP4" value="1"/>
|
||||
<ctl name="USB_RX Mixer IMSV" value="1"/>
|
||||
</path>
|
||||
|
||||
<path name="voip-playbackP">
|
||||
|
|
|
@ -132,7 +132,15 @@ PRODUCT_COPY_FILES += \
|
|||
PRODUCT_PROPERTY_OVERRIDES += \
|
||||
ro.bluetooth.a2dp_offload.supported=true \
|
||||
persist.bluetooth.a2dp_offload.disabled=false \
|
||||
persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac
|
||||
persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac-opus
|
||||
|
||||
# Spatial Audio
|
||||
PRODUCT_PACKAGES += \
|
||||
libspatialaudio
|
||||
|
||||
# declare use of spatial audio
|
||||
PRODUCT_PROPERTY_OVERRIDES += \
|
||||
ro.audio.spatializer_enabled=true
|
||||
|
||||
# Keymaster HAL
|
||||
#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue