bool IPTVRecorder::Open(void) { VERBOSE(VB_RECORD, LOC + "Open() -- begin"); if (_channel->GetFeeder()->IsOpen()) _channel->GetFeeder()->Close(); IPTVChannelInfo chaninfo = _channel->GetCurrentChanInfo(); _error = (!chaninfo.isValid() || !_channel->GetFeeder()->Open(chaninfo.m_url)); VERBOSE(VB_RECORD, LOC + "Open() -- end err("<<_error<<")"); return !_error; }
/** \fn IPTVSignalMonitor::IPTVSignalMonitor(int,IPTVChannel*,uint64_t) * \brief Initializes signal lock and signal values. * * Start() must be called to actually begin continuous * signal monitoring. The timeout is set to 3 seconds, * and the signal threshold is initialized to 0%. * * \param db_cardnum Recorder number to monitor, * if this is less than 0, SIGNAL events will not be * sent to the frontend even if SetNotifyFrontend(true) * is called. * \param _channel IPTVChannel for card * \param _flags Flags to start with */ IPTVSignalMonitor::IPTVSignalMonitor(int db_cardnum, IPTVChannel *_channel, uint64_t _flags) : DTVSignalMonitor(db_cardnum, _channel, _flags), dtvMonitorRunning(false), tableMonitorThread(NULL) { bool isLocked = false; IPTVChannelInfo chaninfo = GetChannel()->GetCurrentChanInfo(); if (chaninfo.isValid()) { isLocked = GetChannel()->GetFeeder()->Open(chaninfo.m_url); } QMutexLocker locker(&statusLock); signalLock.SetValue((isLocked) ? 1 : 0); signalStrength.SetValue((isLocked) ? 100 : 0); }
bool IPTVRecorder::Open(void) { LOG(VB_RECORD, LOG_INFO, LOC + "Open() -- begin"); if (_channel->GetFeeder()->IsOpen()) _channel->GetFeeder()->Close(); IPTVChannelInfo chaninfo = _channel->GetCurrentChanInfo(); if (!chaninfo.isValid()) _error = "Channel Info is invalid"; else if (!_channel->GetFeeder()->Open(chaninfo.m_url)) _error = QString("Failed to open URL %1") .arg(chaninfo.m_url); LOG(VB_RECORD, LOG_INFO, LOC + QString("Open() -- end err(%1)") .arg(_error)); return !IsErrored(); }