X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/8d0841a3c4d57ec102acc2a8ac09123b7ebdee27..2bc720f79ea42168572ba458fec5b2cffb175a04:/lib/service/servicedvb.cpp?ds=sidebyside diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp index 8f58cdee..581f64c5 100644 --- a/lib/service/servicedvb.cpp +++ b/lib/service/servicedvb.cpp @@ -1290,7 +1290,7 @@ int eDVBServicePlay::getCurrentChannel() RESULT eDVBServicePlay::selectChannel(int i) { - if (i < LEFT || i > RIGHT) + if (i < LEFT || i > RIGHT || i == STEREO) i = -1; // Stereo if (m_dvb_service) m_dvb_service->setCacheEntry(eDVBService::cACHANNEL, i); @@ -1734,6 +1734,15 @@ void eDVBServicePlay::updateDecoder() m_decoder->start(); + if (vpid > 0 && vpid < 0x2000) + ; + else + { + std::string radio_pic; + if (!ePythonConfigQuery::getConfigValue("config.misc.radiopic", radio_pic)) + m_decoder->setRadioPic(radio_pic); + } + m_decoder->setAudioChannel(achannel); // how we can do this better? @@ -2004,7 +2013,7 @@ int eDVBServicePlay::getPCMDelay() void eDVBServicePlay::setAC3Delay(int delay) { if (m_dvb_service) - m_dvb_service->setCacheEntry(eDVBService::cAC3DELAY, delay); + m_dvb_service->setCacheEntry(eDVBService::cAC3DELAY, delay ? delay : -1); if (m_decoder) m_decoder->setAC3Delay(delay); } @@ -2012,7 +2021,7 @@ void eDVBServicePlay::setAC3Delay(int delay) void eDVBServicePlay::setPCMDelay(int delay) { if (m_dvb_service) - m_dvb_service->setCacheEntry(eDVBService::cPCMDELAY, delay); + m_dvb_service->setCacheEntry(eDVBService::cPCMDELAY, delay ? delay : -1); if (m_decoder) m_decoder->setPCMDelay(delay); }