From: ghost Date: Fri, 29 May 2009 18:31:22 +0000 (+0200) Subject: dvb.cpp: add demux policy for dm800/500hd X-Git-Tag: 2.6.0~287 X-Git-Url: https://git.cweiske.de/enigma2.git/commitdiff_plain/23876b6f15422655b8c180682b10a09302444bef dvb.cpp: add demux policy for dm800/500hd --- diff --git a/lib/dvb/dvb.cpp b/lib/dvb/dvb.cpp index 208f51d4..a7428493 100644 --- a/lib/dvb/dvb.cpp +++ b/lib/dvb/dvb.cpp @@ -429,7 +429,25 @@ RESULT eDVBResourceManager::allocateDemux(eDVBRegisteredFrontend *fe, ePtr unused; - if (m_demux.size() < 5) + if (m_demux.size() == 3) // dm800 / 500hd + { + for (; i != m_demux.end(); ++i, ++n) + { + if (!i->m_inuse) + { + if (!unused) + unused = i; + } + else if (i->m_adapter == fe->m_adapter && + i->m_demux->getSource() == fe->m_frontend->getDVBID()) + { + demux = new eDVBAllocatedDemux(i); + return 0; + } + } + + } + else if (m_demux.size() < 5) // ATI { /* FIXME: hardware demux policy */ if (!(cap & iDVBChannel::capDecode))