diff options
| -rw-r--r-- | services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java | 36 |
1 files changed, 8 insertions, 28 deletions
diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java index c77cd8e19ec1..b796abd8ea7b 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java @@ -66,11 +66,7 @@ public class HdmiCecLocalDeviceAudioSystem extends HdmiCecLocalDevice { Constants.PROPERTY_LAST_SYSTEM_AUDIO_CONTROL, mSystemAudioActivated ? "true" : "false"); } - if (setSystemAudioMode(false)) { - mService.sendCecCommand( - HdmiCecMessageBuilder.buildSetSystemAudioMode( - mAddress, Constants.ADDR_BROADCAST, false)); - } + terminateSystemAudioMode(); } @Override @@ -335,31 +331,15 @@ public class HdmiCecLocalDeviceAudioSystem extends HdmiCecLocalDevice { protected void terminateSystemAudioMode() { // remove pending initiation actions removeAction(SystemAudioInitiationActionFromAvr.class); - - synchronized (mLock) { - if (!mSystemAudioActivated) { - return; - } - } - - // send <Set System Audio Mode> [“Off”] - mService.sendCecCommand( - HdmiCecMessageBuilder.buildSetSystemAudioMode( - mAddress, Constants.ADDR_BROADCAST, false)); - - // mute speaker - if (!mService.getAudioManager().isStreamMute(AudioManager.STREAM_MUSIC)) { - mService.getAudioManager() - .adjustStreamVolume( - AudioManager.STREAM_MUSIC, - AudioManager.ADJUST_MUTE, - 0); + if (!isSystemAudioActivated()) { + return; } - mSystemAudioSource = null; - synchronized (mLock) { - mSystemAudioActivated = false; - mService.announceSystemAudioModeChange(false); + if (setSystemAudioMode(false)) { + // send <Set System Audio Mode> [“Off”] + mService.sendCecCommand( + HdmiCecMessageBuilder.buildSetSystemAudioMode( + mAddress, Constants.ADDR_BROADCAST, false)); } } |