Merge "Enable LE Audio unicast offload"

This commit is contained in:
TreeHugger Robot 2022-12-26 05:12:52 +00:00 committed by Android (Google) Code Review
commit f72338e7bd
4 changed files with 112 additions and 0 deletions

View file

@ -0,0 +1,85 @@
<?xml version="1.0" encoding="UTF-8"?>
<!---
This is an example to configure LE Audio hardware offload supported capability settings
codecConfigurationList:
Supported codec capability along with its parameter setting
strategyConfigurationList:
ASE Configuration strategies
configurationList:
For each configuration, there are two attributes
- codecConfiguration
- strategyConfiguration
scenarioList:
There would be only one `scenarios` group
For each scenario, the are two attributes
- encode
- decode
If a scenario is unidirectional, mark another direction as `invalid`
The configuration should be chosen from `configurationList`
-->
<leAudioOffloadSetting>
<scenarioList>
<!-- encode only -->
<scenario encode="OneChanMono_16_1" decode="invalid"/>
<scenario encode="TwoChanStereo_16_1" decode="invalid"/>
<scenario encode="OneChanStereo_16_1" decode="invalid"/>
<scenario encode="OneChanMono_16_2" decode="invalid"/>
<scenario encode="TwoChanStereo_16_2" decode="invalid"/>
<scenario encode="OneChanStereo_16_2" decode="invalid"/>
<scenario encode="OneChanMono_24_2" decode="invalid"/>
<scenario encode="TwoChanStereo_24_2" decode="invalid"/>
<scenario encode="OneChanStereo_24_2" decode="invalid"/>
<scenario encode="OneChanMono_32_2" decode="invalid"/>
<scenario encode="TwoChanStereo_32_2" decode="invalid"/>
<scenario encode="OneChanStereo_32_2" decode="invalid"/>
<scenario encode="OneChanMono_48_4" decode="invalid"/>
<scenario encode="TwoChanStereo_48_4" decode="invalid"/>
<scenario encode="OneChanStereo_48_4" decode="invalid"/>
<!-- encode and decode -->
<scenario encode="OneChanStereo_16_1" decode="OneChanStereo_16_1"/>
<scenario encode="OneChanStereo_16_1" decode="OneChanMono_16_1"/>
<scenario encode="TwoChanStereo_16_1" decode="OneChanMono_16_1"/>
<scenario encode="OneChanMono_16_1" decode="OneChanMono_16_1"/>
<scenario encode="OneChanStereo_16_2" decode="OneChanStereo_16_2"/>
<scenario encode="OneChanStereo_16_2" decode="OneChanMono_16_2"/>
<scenario encode="TwoChanStereo_16_2" decode="OneChanMono_16_2"/>
<scenario encode="OneChanMono_16_2" decode="OneChanMono_16_2"/>
<scenario encode="OneChanStereo_32_2" decode="OneChanStereo_32_2"/>
<scenario encode="OneChanStereo_32_2" decode="OneChanMono_32_2"/>
<scenario encode="TwoChanStereo_32_2" decode="OneChanMono_32_2"/>
<scenario encode="OneChanMono_32_2" decode="OneChanMono_32_2"/>
</scenarioList>
<configurationList>
<configuration name="OneChanMono_16_1" codecConfiguration="LC3_16k_1" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
<configuration name="TwoChanStereo_16_1" codecConfiguration="LC3_16k_1" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
<configuration name="OneChanStereo_16_1" codecConfiguration="LC3_16k_1" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
<configuration name="OneChanMono_16_2" codecConfiguration="LC3_16k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
<configuration name="TwoChanStereo_16_2" codecConfiguration="LC3_16k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
<configuration name="OneChanStereo_16_2" codecConfiguration="LC3_16k_2" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
<configuration name="OneChanMono_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
<configuration name="TwoChanStereo_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
<configuration name="OneChanStereo_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
<configuration name="OneChanMono_32_2" codecConfiguration="LC3_32k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
<configuration name="TwoChanStereo_32_2" codecConfiguration="LC3_32k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
<configuration name="OneChanStereo_32_2" codecConfiguration="LC3_32k_2" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
<configuration name="OneChanMono_48_4" codecConfiguration="LC3_48k_4" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
<configuration name="TwoChanStereo_48_4" codecConfiguration="LC3_48k_4" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
<configuration name="OneChanStereo_48_4" codecConfiguration="LC3_48k_4" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
</configurationList>
<codecConfigurationList>
<codecConfiguration name="LC3_16k_1" codec="LC3" samplingFrequency="16000" frameDurationUs="7500" octetsPerCodecFrame="30"/>
<codecConfiguration name="LC3_16k_2" codec="LC3" samplingFrequency="16000" frameDurationUs="10000" octetsPerCodecFrame="40"/>
<codecConfiguration name="LC3_24k_2" codec="LC3" samplingFrequency="24000" frameDurationUs="10000" octetsPerCodecFrame="60"/>
<codecConfiguration name="LC3_32k_2" codec="LC3" samplingFrequency="32000" frameDurationUs="10000" octetsPerCodecFrame="80"/>
<codecConfiguration name="LC3_48k_4" codec="LC3" samplingFrequency="48000" frameDurationUs="10000" octetsPerCodecFrame="120"/>
</codecConfigurationList>
<strategyConfigurationList>
<strategyConfiguration name="STEREO_ONE_CIS_PER_DEVICE" audioLocation="STEREO" connectedDevice="2" channelCount="1"/>
<strategyConfiguration name="STEREO_TWO_CISES_PER_DEVICE" audioLocation="STEREO" connectedDevice="1" channelCount="2"/>
<strategyConfiguration name="MONO_ONE_CIS_PER_DEVICE" audioLocation="MONO" connectedDevice="1" channelCount="1"/>
</strategyConfigurationList>
</leAudioOffloadSetting>

View file

@ -149,6 +149,15 @@ PRODUCT_PRODUCT_PROPERTIES += \
bluetooth.profile.ccp.server.enabled=true \ bluetooth.profile.ccp.server.enabled=true \
bluetooth.profile.vcp.controller.enabled=true bluetooth.profile.vcp.controller.enabled=true
# Bluetooth LE Audio enable hardware offloading
PRODUCT_PRODUCT_PROPERTIES += \
ro.bluetooth.leaudio_offload.supported=true \
persist.bluetooth.leaudio_offload.disabled=false
# Bluetooth LE Auido offload capabilities setting
PRODUCT_COPY_FILES += \
device/google/shusky/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml
# Support One-Handed mode # Support One-Handed mode
PRODUCT_PRODUCT_PROPERTIES += \ PRODUCT_PRODUCT_PROPERTIES += \
ro.support_one_handed_mode=true ro.support_one_handed_mode=true

View file

@ -151,6 +151,15 @@ PRODUCT_PRODUCT_PROPERTIES += \
bluetooth.profile.ccp.server.enabled=true \ bluetooth.profile.ccp.server.enabled=true \
bluetooth.profile.vcp.controller.enabled=true bluetooth.profile.vcp.controller.enabled=true
# Bluetooth LE Audio enable hardware offloading
PRODUCT_PRODUCT_PROPERTIES += \
ro.bluetooth.leaudio_offload.supported=true \
persist.bluetooth.leaudio_offload.disabled=false
# Bluetooth LE Auido offload capabilities setting
PRODUCT_COPY_FILES += \
device/google/shusky/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml
# Keymaster HAL # Keymaster HAL
#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service #LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service

View file

@ -147,6 +147,15 @@ PRODUCT_PRODUCT_PROPERTIES += \
bluetooth.profile.ccp.server.enabled=true \ bluetooth.profile.ccp.server.enabled=true \
bluetooth.profile.vcp.controller.enabled=true bluetooth.profile.vcp.controller.enabled=true
# Bluetooth LE Audio enable hardware offloading
PRODUCT_PRODUCT_PROPERTIES += \
ro.bluetooth.leaudio_offload.supported=true \
persist.bluetooth.leaudio_offload.disabled=false
# Bluetooth LE Auido offload capabilities setting
PRODUCT_COPY_FILES += \
device/google/shusky/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml
# Support One-Handed mode # Support One-Handed mode
PRODUCT_PRODUCT_PROPERTIES += \ PRODUCT_PRODUCT_PROPERTIES += \
ro.support_one_handed_mode=true ro.support_one_handed_mode=true