Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cff7f96b authored by Pavlin Radoslavov's avatar Pavlin Radoslavov Committed by android-build-merger
Browse files

Merge "Explicitly mute the audio output while switching the A2DP Active Device"

am: b9051ca6

Change-Id: I6a41b4d0f065376e8b4f9987ef84bdc7607e8f08
parents 79592872 b9051ca6
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -507,7 +507,14 @@ public class A2dpService extends ProfileService {
                }
                // Make sure the Audio Manager knows the previous Active device is disconnected,
                // and the new Active device is connected.
                // Also, mute and unmute the output during the switch to avoid audio glitches.
                boolean wasMuted = false;
                if (previousActiveDevice != null) {
                    if (!mAudioManager.isStreamMute(AudioManager.STREAM_MUSIC)) {
                        mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                                                         AudioManager.ADJUST_MUTE, 0);
                        wasMuted = true;
                    }
                    mAudioManager.setBluetoothA2dpDeviceConnectionStateSuppressNoisyIntent(
                            previousActiveDevice, BluetoothProfile.STATE_DISCONNECTED,
                            BluetoothProfile.A2DP, true, -1);
@@ -529,6 +536,10 @@ public class A2dpService extends ProfileService {
                // change, so the Audio Service can reset accordingly the audio
                // feeding parameters in the Audio HAL to the Bluetooth stack.
                mAudioManager.handleBluetoothA2dpDeviceConfigChange(mActiveDevice);
                if (wasMuted) {
                    mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                                                     AudioManager.ADJUST_UNMUTE, 0);
                }
            }
        }
        return true;