aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/dvb')
-rw-r--r--lib/dvb/dvb.cpp11
-rw-r--r--lib/dvb/dvb.h1
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/dvb/dvb.cpp b/lib/dvb/dvb.cpp
index c8feccfd..35e5c993 100644
--- a/lib/dvb/dvb.cpp
+++ b/lib/dvb/dvb.cpp
@@ -616,3 +616,14 @@ RESULT eDVBChannel::getCurrentPosition(pts_t &pos)
return 0;
}
+
+RESULT eDVBChannel::seekTo(pts_t &pts)
+{
+ m_pvr_thread->pause();
+ if (m_decoder_demux)
+ m_decoder_demux->get().flush();
+ /* demux will also flush all decoder.. */
+// m_pvr_thread->seek(pts);
+ m_pvr_thread->resume();
+}
+
diff --git a/lib/dvb/dvb.h b/lib/dvb/dvb.h
index 9a85c22c..f8586257 100644
--- a/lib/dvb/dvb.h
+++ b/lib/dvb/dvb.h
@@ -192,6 +192,7 @@ public:
RESULT playFile(const char *file);
RESULT getLength(pts_t &len);
RESULT getCurrentPosition(pts_t &pos);
+ RESULT seekTo(pts_t &pts);
private:
ePtr<eDVBAllocatedFrontend> m_frontend;