aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb
diff options
context:
space:
mode:
authorghost <andreas.monzner@multimedia-labs.de>2009-12-13 12:37:15 +0100
committerghost <andreas.monzner@multimedia-labs.de>2009-12-13 12:37:15 +0100
commit94b346a792a343858948de8c6db1301592af5986 (patch)
tree73aa46e5745d51ea7dace7d54e3065065db8d638 /lib/dvb
parent807d980857651dacdba0abfc9a5e87fb473303cc (diff)
downloadenigma2-94b346a792a343858948de8c6db1301592af5986.tar.gz
enigma2-94b346a792a343858948de8c6db1301592af5986.zip
add preStart event and use it to load the cutlist
Diffstat (limited to 'lib/dvb')
-rw-r--r--lib/dvb/dvb.cpp2
-rw-r--r--lib/dvb/idvb.h2
-rw-r--r--lib/dvb/pmt.cpp3
-rw-r--r--lib/dvb/pmt.h1
4 files changed, 7 insertions, 1 deletions
diff --git a/lib/dvb/dvb.cpp b/lib/dvb/dvb.cpp
index 894287e8..76f6899d 100644
--- a/lib/dvb/dvb.cpp
+++ b/lib/dvb/dvb.cpp
@@ -1771,6 +1771,8 @@ RESULT eDVBChannel::playFile(const char *file)
m_pvr_thread->setStreamMode(1);
m_pvr_thread->setScatterGather(this);
+ m_event(this, evtPreStart);
+
if (m_pvr_thread->start(file, m_pvr_fd_dst))
{
delete m_pvr_thread;
diff --git a/lib/dvb/idvb.h b/lib/dvb/idvb.h
index cff4dbb9..4ef7efad 100644
--- a/lib/dvb/idvb.h
+++ b/lib/dvb/idvb.h
@@ -522,7 +522,7 @@ public:
virtual RESULT getCurrentFrontendParameters(ePtr<iDVBFrontendParameters> &)=0;
enum
{
- evtEOF, evtSOF, evtFailed
+ evtPreStart, evtEOF, evtSOF, evtFailed
};
virtual RESULT connectStateChange(const Slot1<void,iDVBChannel*> &stateChange, ePtr<eConnection> &connection)=0;
virtual RESULT connectEvent(const Slot2<void,iDVBChannel*,int> &eventChange, ePtr<eConnection> &connection)=0;
diff --git a/lib/dvb/pmt.cpp b/lib/dvb/pmt.cpp
index 9bd065b3..ee89a3a4 100644
--- a/lib/dvb/pmt.cpp
+++ b/lib/dvb/pmt.cpp
@@ -75,6 +75,9 @@ void eDVBServicePMTHandler::channelEvent(iDVBChannel *channel, int event)
{
switch (event)
{
+ case iDVBChannel::evtPreStart:
+ serviceEvent(eventPreStart);
+ break;
case iDVBChannel::evtEOF:
serviceEvent(eventEOF);
break;
diff --git a/lib/dvb/pmt.h b/lib/dvb/pmt.h
index a9ca23f2..483c06b1 100644
--- a/lib/dvb/pmt.h
+++ b/lib/dvb/pmt.h
@@ -123,6 +123,7 @@ public:
eventNewProgramInfo, // we just received a PMT
eventTuned, // a channel was sucessfully (re-)tuned in, you may start additional filters now
+ eventPreStart, // before start filepush thread
eventSOF, // seek pre start
eventEOF, // a file playback did end