X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Flib%2FCECProcessor.cpp;h=cf7b5b4ec62f0d046483464d8528c09bdf55b9e3;hb=41e3372ac4ad2de0d20e19e9dc9c8776220451b1;hp=5b6fb033bebc3ceab5ea0984203b8c415a46046c;hpb=d55f263f0fceeae13d0e046da20262307694c203;p=deb_libcec.git diff --git a/src/lib/CECProcessor.cpp b/src/lib/CECProcessor.cpp index 5b6fb03..cf7b5b4 100644 --- a/src/lib/CECProcessor.cpp +++ b/src/lib/CECProcessor.cpp @@ -60,7 +60,7 @@ CCECProcessor::CCECProcessor(CLibCEC *controller, libcec_configuration *configur m_logicalAddresses.Clear(); CreateBusDevices(); m_configuration.Clear(); - m_configuration.serverVersion = CEC_SERVER_VERSION_1_5_0; + m_configuration.serverVersion = configuration->serverVersion; SetConfiguration(configuration); if (m_configuration.tvVendor != CEC_VENDOR_UNKNOWN) @@ -78,7 +78,7 @@ CCECProcessor::CCECProcessor(CLibCEC *controller, const char *strDeviceName, con m_iLastTransmission(0) { m_configuration.Clear(); - m_configuration.serverVersion = CEC_SERVER_VERSION_1_5_0; + m_configuration.serverVersion = CEC_SERVER_VERSION_1_5_1; // client version < 1.5.0 m_configuration.clientVersion = (uint32_t)CEC_CLIENT_VERSION_PRE_1_5; @@ -1372,6 +1372,8 @@ const char *CCECProcessor::ToString(const cec_client_version version) return "pre-1.5"; case CEC_CLIENT_VERSION_1_5_0: return "1.5.0"; + case CEC_CLIENT_VERSION_1_5_1: + return "1.5.1"; default: return "Unknown"; } @@ -1385,6 +1387,8 @@ const char *CCECProcessor::ToString(const cec_server_version version) return "pre-1.5"; case CEC_SERVER_VERSION_1_5_0: return "1.5.0"; + case CEC_SERVER_VERSION_1_5_1: + return "1.5.1"; default: return "Unknown"; } @@ -1560,6 +1564,10 @@ bool CCECProcessor::SetConfiguration(const libcec_configuration *configuration) m_configuration.bPowerOffScreensaver = configuration->bPowerOffScreensaver; m_configuration.bPowerOffOnStandby = configuration->bPowerOffOnStandby; + // client version 1.5.1 + if (configuration->clientVersion >= CEC_CLIENT_VERSION_1_5_1) + m_configuration.bSendInactiveSource = configuration->bSendInactiveSource; + // ensure that there is at least 1 device type set if (m_configuration.deviceTypes.IsEmpty()) m_configuration.deviceTypes.Add(CEC_DEVICE_TYPE_RECORDING_DEVICE); @@ -1598,6 +1606,10 @@ bool CCECProcessor::GetCurrentConfiguration(libcec_configuration *configuration) configuration->bPowerOffScreensaver = m_configuration.bPowerOffScreensaver; configuration->bPowerOffOnStandby = m_configuration.bPowerOffOnStandby; + // client version 1.5.1 + if (configuration->clientVersion >= CEC_CLIENT_VERSION_1_5_1) + configuration->bSendInactiveSource = m_configuration.bSendInactiveSource; + return true; }