Merge "AS: Fix sometimes invalid volume set to LE Audio devices"

This commit is contained in:
Jakub Tyszkowski
2023-03-29 08:25:21 +00:00
committed by Gerrit Code Review

View File

@@ -4087,13 +4087,14 @@ public class AudioService extends IAudioService.Stub
return;
}
// Forcefully set LE audio volume as a workaround, since in some cases
// (like the outgoing call) the value of 'device' is not DEVICE_OUT_BLE_*
// even when BLE is connected.
// In some cases (like the outgoing or rejected call) the value of 'device' is not
// DEVICE_OUT_BLE_* even when BLE is connected. Changing the volume level in such case
// may cuase the other devices volume level leaking into the LeAudio device settings.
if (!AudioSystem.isLeAudioDeviceType(device)) {
Log.w(TAG, "setLeAudioVolumeOnModeUpdate got unexpected device=" + device
+ ", forcing to device=" + AudioSystem.DEVICE_OUT_BLE_HEADSET);
device = AudioSystem.DEVICE_OUT_BLE_HEADSET;
Log.w(TAG, "setLeAudioVolumeOnModeUpdate ignoring invalid device="
+ device + ", mode=" + mode + ", index=" + index + " maxIndex=" + maxIndex
+ " streamType=" + streamType);
return;
}
if (DEBUG_VOL) {