summaryrefslogtreecommitdiff
path: root/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
diff options
context:
space:
mode:
authorTim Peng <timhypeng@google.com>2021-08-20 05:43:29 +0000
committerNaval saini <saini@codeaurora.org>2021-11-16 05:29:20 +0000
commit8f61138dc3e92e698d1ca409fea75ff3ef28dbca (patch)
tree4072091bb10877993a4b318fc8cbe96cbee711e5 /src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
parentf5f50b6f64e7c7d99cd407f3697c58af0100b6aa (diff)
Phone fails to switch channel mode from stereo to mono
-Set codec to SBC when HD audio is off Bug: 194349060 Test: make -j50 RunSettingsRoboTests CRs-Fixed: 3075863 Change-Id: Iae4aa3f1d77350f5b4d91e7a687e048091c1daea
Diffstat (limited to 'src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java')
-rw-r--r--src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java b/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
index 6429cb9c2a..0367fcca22 100644
--- a/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
+++ b/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
@@ -226,12 +226,18 @@ public abstract class AbstractBluetoothDialogPreferenceController extends
*/
public void onHDAudioEnabled(boolean enabled) {}
- static int getHighestCodec(BluetoothCodecConfig[] configs) {
+ static int getHighestCodec(BluetoothA2dp bluetoothA2dp, BluetoothDevice activeDevice,
+ BluetoothCodecConfig[] configs) {
if (configs == null) {
Log.d(TAG, "Unable to get highest codec. Configs are empty");
return BluetoothCodecConfig.SOURCE_CODEC_TYPE_INVALID;
}
Log.d(TAG, "CODEC_TYPES len: " + CODEC_TYPES.length + " codec_config len: " + configs.length);
+ // If HD audio is not enabled, SBC is the only one available codec.
+ if (bluetoothA2dp.isOptionalCodecsEnabled(activeDevice)
+ != BluetoothA2dp.OPTIONAL_CODECS_PREF_ENABLED) {
+ return BluetoothCodecConfig.SOURCE_CODEC_TYPE_SBC;
+ }
for (int i = 0; i < CODEC_TYPES.length; i++) {
for (int j = 0; j < configs.length; j++) {
if ((configs[j].getCodecType() == CODEC_TYPES[i])) {