Enable LE Audio unicast offload
1. Set the LE Audio unicast offload property 2. Add the offload capability file for unicast Bug: 257377483 Test: Manual Change-Id: If6233bfcefa8894f52d0a8c7799ffa5b6b786f53
This commit is contained in:
parent
8ed4549f8f
commit
c0b6391624
4 changed files with 112 additions and 0 deletions
85
bluetooth/le_audio_codec_capabilities.xml
Normal file
85
bluetooth/le_audio_codec_capabilities.xml
Normal 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>
|
||||||
|
|
|
@ -133,6 +133,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
|
||||||
|
|
|
@ -138,6 +138,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
|
||||||
|
|
||||||
|
|
|
@ -134,6 +134,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
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue