aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb/pmt.cpp
diff options
context:
space:
mode:
authorFelix Domke <tmbinc@elitedvb.net>2005-10-15 20:33:40 +0000
committerFelix Domke <tmbinc@elitedvb.net>2005-10-15 20:33:40 +0000
commitb6592b47fa1932132a67a3beabcce7c96856d211 (patch)
treea17f09ce8ab9426f24330ec47eed15aee7af9794 /lib/dvb/pmt.cpp
parent4332f5c83e491aa5c16064ec244b7171ed6687c6 (diff)
downloadenigma2-b6592b47fa1932132a67a3beabcce7c96856d211.tar.gz
enigma2-b6592b47fa1932132a67a3beabcce7c96856d211.zip
add demux handling (for decoder and record)
Diffstat (limited to 'lib/dvb/pmt.cpp')
-rw-r--r--lib/dvb/pmt.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/dvb/pmt.cpp b/lib/dvb/pmt.cpp
index a5bd9705..68b1f6c9 100644
--- a/lib/dvb/pmt.cpp
+++ b/lib/dvb/pmt.cpp
@@ -5,9 +5,10 @@
#include <lib/dvb/metaparser.h>
#include <dvbsi++/ca_program_map_section.h>
-eDVBServicePMTHandler::eDVBServicePMTHandler()
+eDVBServicePMTHandler::eDVBServicePMTHandler(int record)
:m_pmt_pid(0xFFFF), m_ca_servicePtr(0)
{
+ m_record = record;
eDVBResourceManager::getInstance(m_resourceManager);
CONNECT(m_PMT.tableReady, eDVBServicePMTHandler::PMTready);
CONNECT(m_PAT.tableReady, eDVBServicePMTHandler::PATready);
@@ -27,8 +28,8 @@ void eDVBServicePMTHandler::channelStateChanged(iDVBChannel *channel)
&& (state == iDVBChannel::state_ok) && (!m_demux))
{
if (m_channel)
- if (m_channel->getDemux(m_demux))
- eDebug("shit it failed.. again.");
+ if (m_channel->getDemux(m_demux, m_record ? 0 : iDVBChannel::capDecode))
+ eDebug("Allocating a demux for now tuned-in channel failed.");
serviceEvent(eventTuned);
@@ -198,8 +199,6 @@ int eDVBServicePMTHandler::tune(eServiceReferenceDVB &ref)
RESULT res;
m_reference = ref;
-// ref.path = "/viva.ts"; // hrhr.
-
/* is this a normal (non PVR) channel? */
if (ref.path.empty())
{