diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2008-10-27 08:53:56 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2008-10-27 08:53:56 +0000 |
| commit | aed917161dda79ec6a53e20dbf0ee00a1affc4c0 (patch) | |
| tree | b102f5b079846218b3d0b1520d21aeadf6e348aa /lib/dvb | |
| parent | fca6d20b97154b9910ea1313e69de132f8f528b1 (diff) | |
| download | enigma2-aed917161dda79ec6a53e20dbf0ee00a1affc4c0.tar.gz enigma2-aed917161dda79ec6a53e20dbf0ee00a1affc4c0.zip | |
set pat/pmt timeout back to 20 seconds... to get rid of recordings without
pat/pmt... but its a real mystery for me why 4 seconds isnt enough...
Diffstat (limited to 'lib/dvb')
| -rw-r--r-- | lib/dvb/pmt.cpp | 6 | ||||
| -rw-r--r-- | lib/dvb/scan.cpp | 4 | ||||
| -rw-r--r-- | lib/dvb/specs.h | 8 |
3 files changed, 9 insertions, 9 deletions
diff --git a/lib/dvb/pmt.cpp b/lib/dvb/pmt.cpp index 39a2c3d7..c0447b47 100644 --- a/lib/dvb/pmt.cpp +++ b/lib/dvb/pmt.cpp @@ -50,9 +50,9 @@ void eDVBServicePMTHandler::channelStateChanged(iDVBChannel *channel) eDebug("ok ... now we start!!"); if (m_pmt_pid == -1) - m_PAT.begin(eApp, eDVBPATSpec(m_reference.path.empty() ? false : true), m_demux); + m_PAT.begin(eApp, eDVBPATSpec(), m_demux); else - m_PMT.begin(eApp, eDVBPMTSpec(m_pmt_pid, m_reference.getServiceID().get(), m_reference.path.empty() ? false : true), m_demux); + m_PMT.begin(eApp, eDVBPMTSpec(m_pmt_pid, m_reference.getServiceID().get()), m_demux); if ( m_service && !m_service->cacheEmpty() ) serviceEvent(eventNewProgramInfo); @@ -135,7 +135,7 @@ void eDVBServicePMTHandler::PATready(int) if (pmtpid == -1) serviceEvent(eventNoPATEntry); else - m_PMT.begin(eApp, eDVBPMTSpec(pmtpid, m_reference.getServiceID().get(), m_reference.path.empty() ? false : true), m_demux); + m_PMT.begin(eApp, eDVBPMTSpec(pmtpid, m_reference.getServiceID().get()), m_demux); } else serviceEvent(eventNoPAT); } diff --git a/lib/dvb/scan.cpp b/lib/dvb/scan.cpp index 2a08bf79..2457763a 100644 --- a/lib/dvb/scan.cpp +++ b/lib/dvb/scan.cpp @@ -205,7 +205,7 @@ RESULT eDVBScan::startFilter() if (m_ready_all & readyPAT) { m_PAT = new eTable<ProgramAssociationSection>(m_scan_debug); - if (m_PAT->start(m_demux, eDVBPATSpec())) + if (m_PAT->start(m_demux, eDVBPATSpec(4000))) return -1; CONNECT(m_PAT->tableReady, eDVBScan::PATready); } @@ -376,7 +376,7 @@ void eDVBScan::PMTready(int err) } if (m_pmt_in_progress != m_pmts_to_read.end()) - m_PMT->start(m_demux, eDVBPMTSpec(m_pmt_in_progress->second.pmtPid, m_pmt_in_progress->first)); + m_PMT->start(m_demux, eDVBPMTSpec(m_pmt_in_progress->second.pmtPid, m_pmt_in_progress->first, 4000)); else { m_PMT = 0; diff --git a/lib/dvb/specs.h b/lib/dvb/specs.h index 514bc341..fdbaea1c 100644 --- a/lib/dvb/specs.h +++ b/lib/dvb/specs.h @@ -14,12 +14,12 @@ struct eDVBPMTSpec { eDVBTableSpec m_spec; public: - eDVBPMTSpec(int pid, int sid, bool long_timeout = false) + eDVBPMTSpec(int pid, int sid, int timeout = 20000) { m_spec.pid = pid; m_spec.tid = ProgramMapSection::TID; m_spec.tidext = sid; - m_spec.timeout = long_timeout ? 20000 : 4000; // ProgramMapSection::TIMEOUT; + m_spec.timeout = timeout; // ProgramMapSection::TIMEOUT; m_spec.flags = eDVBTableSpec::tfAnyVersion | eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfHaveTIDExt | eDVBTableSpec::tfCheckCRC | eDVBTableSpec::tfHaveTimeout; @@ -108,11 +108,11 @@ struct eDVBPATSpec { eDVBTableSpec m_spec; public: - eDVBPATSpec(bool long_timeout=false) + eDVBPATSpec(int timeout=20000) { m_spec.pid = ProgramAssociationSection::PID; m_spec.tid = ProgramAssociationSection::TID; - m_spec.timeout = long_timeout ? 20000 : 4000; // ProgramAssociationSection::TIMEOUT; + m_spec.timeout = timeout; // ProgramAssociationSection::TIMEOUT; m_spec.flags = eDVBTableSpec::tfAnyVersion | eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfCheckCRC | eDVBTableSpec::tfHaveTimeout; |
