diff options
| author | 2021-03-05 13:05:28 +0000 | |
|---|---|---|
| committer | 2021-03-05 13:05:28 +0000 | |
| commit | f8d2ecebb8117f896346223f86a5b83e50beb0ed (patch) | |
| tree | 54509c03ba95dbf1ac301a0cdaf5e335fb6c311d | |
| parent | 161b1278f74b9f71dabab00db8b96b4d2a229b04 (diff) | |
| parent | 31444d7845dbbaa46b3648600fa9303d095e6dee (diff) | |
Merge "Set SAM according to TV's settings" am: db3769c465 am: 31444d7845
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1310537
MUST ONLY BE SUBMITTED BY AUTOMERGER
Change-Id: Ibf9281d61d6565b34c75189d9ba09d3daa460801
| -rw-r--r-- | services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java index 28aa79d4db9d..f658e33e0530 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java @@ -1176,7 +1176,21 @@ final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { // Ignore this message. return true; } - setSystemAudioMode(HdmiUtils.parseCommandParamSystemAudioStatus(message)); + boolean tvSystemAudioMode = isSystemAudioControlFeatureEnabled(); + boolean avrSystemAudioMode = HdmiUtils.parseCommandParamSystemAudioStatus(message); + // Set System Audio Mode according to TV's settings. + // Handle <System Audio Mode Status> here only when + // SystemAudioAutoInitiationAction timeout + HdmiDeviceInfo avr = getAvrDeviceInfo(); + if (avr == null) { + setSystemAudioMode(false); + } else if (avrSystemAudioMode != tvSystemAudioMode) { + addAndStartAction(new SystemAudioActionFromTv(this, avr.getLogicalAddress(), + tvSystemAudioMode, null)); + } else { + setSystemAudioMode(tvSystemAudioMode); + } + return true; } |