diff = 1<<29;
else if (sat.polarisation != osat.polarisation)
diff = 1<<28;
- else
+ else
+ {
diff = abs(sat.frequency - osat.frequency);
+ diff += abs(sat.symbol_rate - osat.symbol_rate);
+ }
return 0;
}
case iDVBFrontend::feCable:
DEFINE_REF(eDVBFrontend);
eDVBFrontend::eDVBFrontend(int adap, int fe, int &ok)
- :m_type(-1), m_fe(fe), m_timeout(0), m_tuneTimer(0), m_fd(-1)
+ :m_type(-1), m_fe(fe), m_fd(-1), m_timeout(0), m_tuneTimer(0)
#if HAVE_DVB_API_VERSION < 3
,m_secfd(-1)
#endif
for (int i=0; i<entries; ++i)
m_data[i] = -1;
+ m_idleInputpower[0]=m_idleInputpower[1]=0;
+
ok = !openFrontend();
closeFrontend();
}
eDebug("[SEC] error read lnbp (%m)");
if ( m_sec_sequence.current()->mode == eSecCommand::modeStatic )
{
- data[0] |= 0x90; // enable static current limiting
+ data[0] |= 0x80; // enable static current limiting
eDebug("[SEC] set static current limiting");
}
else
{
- data[0] &= ~0x90; // enable dynamic current limiting
+ data[0] &= ~0x80; // enable dynamic current limiting
eDebug("[SEC] set dynamic current limiting");
}
if(::write(fd, data, 1) != 1)