diff --git a/frameworks/services/hdmicec/libhdmi_cec/HdmiCecControl.cpp b/frameworks/services/hdmicec/libhdmi_cec/HdmiCecControl.cpp index 31fca5db..12508b11 100644 --- a/frameworks/services/hdmicec/libhdmi_cec/HdmiCecControl.cpp +++ b/frameworks/services/hdmicec/libhdmi_cec/HdmiCecControl.cpp @@ -852,7 +852,14 @@ int HdmiCecControl::getPhysicalAddress(uint16_t* addr) } // Accelerate when playback is not connected to tv. - if (mCecDevice.is_playback && (!mCecDevice.cec_connect_status)) { + char ledcolor[PROPERTY_VALUE_MAX] = {0}; + getProperty(PROPERTY_VASOTT_LEDCOLOR, ledcolor, "-1"); + *addr = static_cast(std::atoi(ledcolor)); + LOGD("Get PROPERTY_VASOTT_LEDCOLOR:%s data:%d", ledcolor, *addr); + + if (mCecDevice.is_playback + && strncmp(ledcolor, "2", 2) //If led green light(standby mode) don't check cec connect status + && (!mCecDevice.cec_connect_status)) { *addr = mCecDevice.phy_addr; LOGD("use %2x when not connected to tv", mCecDevice.phy_addr); return 0x1000;