diff options
-rw-r--r-- | media/java/android/media/AudioService.java | 10 | ||||
-rw-r--r-- | services/core/java/com/android/server/hdmi/HdmiControlService.java | 2 |
2 files changed, 11 insertions, 1 deletions
diff --git a/media/java/android/media/AudioService.java b/media/java/android/media/AudioService.java index 40d45ea67a15..71a05ab2cd15 100644 --- a/media/java/android/media/AudioService.java +++ b/media/java/android/media/AudioService.java @@ -1351,6 +1351,16 @@ public class AudioService extends IAudioService.Stub { streamType = AudioSystem.STREAM_NOTIFICATION; } + // If Hdmi-CEC system audio mode is on, show volume bar + // only when TV receives volume notification from Audio Receiver. + if (mHdmiTvClient != null && streamType == AudioSystem.STREAM_MUSIC) { + synchronized (mHdmiTvClient) { + if (mHdmiSystemAudioSupported && + ((flags & AudioManager.FLAG_HDMI_SYSTEM_AUDIO_VOLUME) == 0)) { + flags &= ~AudioManager.FLAG_SHOW_UI; + } + } + } mVolumeController.postVolumeChanged(streamType, flags); if ((flags & AudioManager.FLAG_FIXED_VOLUME) == 0) { diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java index 9a3404705855..4d9b4e9055d5 100644 --- a/services/core/java/com/android/server/hdmi/HdmiControlService.java +++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java @@ -798,7 +798,7 @@ public final class HdmiControlService extends SystemService { // FLAG_HDMI_SYSTEM_AUDIO_VOLUME prevents audio manager from announcing // volume change notification back to hdmi control service. audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, volume, - AudioManager.FLAG_HDMI_SYSTEM_AUDIO_VOLUME); + AudioManager.FLAG_SHOW_UI | AudioManager.FLAG_HDMI_SYSTEM_AUDIO_VOLUME); } } |