X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/572caca1ba06dd8247724c9f5d6bcad515e2edf4..06d78eb689babb22f1a315203a8c6871d9ae121d:/lib/dvb/idvb.h diff --git a/lib/dvb/idvb.h b/lib/dvb/idvb.h index 742a3a32..93d3b52a 100644 --- a/lib/dvb/idvb.h +++ b/lib/dvb/idvb.h @@ -224,7 +224,7 @@ public: // iStaticServiceInformation RESULT getName(const eServiceReference &ref, std::string &name); - RESULT getEvent(const eServiceReference &ref, ePtr &ptr); + RESULT getEvent(const eServiceReference &ref, ePtr &ptr, time_t start_time); bool isPlayable(const eServiceReference &ref, const eServiceReference &ignore); /* for filtering: */ @@ -429,7 +429,7 @@ public: can be shared between multiple decoders. Of couse skipping doesn't make much sense then, but getCurrentPosition does. */ - virtual RESULT getCurrentPosition(iDVBDemux *decoding_demux, pts_t &pos) = 0; + virtual RESULT getCurrentPosition(iDVBDemux *decoding_demux, pts_t &pos, int mode) = 0; virtual RESULT seekTo(iDVBDemux *decoding_demux, int relative, pts_t &pts) = 0; virtual RESULT seekToPosition(iDVBDemux *decoding_demux, const off_t &pts) = 0; }; @@ -444,7 +444,7 @@ public: virtual RESULT createSectionReader(eMainloop *context, ePtr &reader)=0; virtual RESULT createTSRecorder(ePtr &recorder)=0; virtual RESULT getMPEGDecoder(ePtr &reader)=0; - virtual RESULT getSTC(pts_t &pts)=0; + virtual RESULT getSTC(pts_t &pts, int num=0)=0; virtual RESULT getCADemuxID(uint8_t &id)=0; virtual RESULT flush()=0; }; @@ -474,6 +474,9 @@ public: /** Continue after freeze. */ virtual RESULT unfreeze()=0; + /** fast forward by skipping frames. 0 is disabled, 2 is twice-the-speed, ... */ + virtual RESULT setFastForward(int skip=0)=0; + // stop on .. Picture enum { spm_I, spm_Ref, spm_Any }; /** Stop on specific decoded picture. For I-Frame display. */ @@ -489,6 +492,8 @@ public: enum { zoom_Normal, zoom_PanScan, zoom_Letterbox, zoom_Fullscreen }; /** Set Zoom. mode *must* be fitting. */ virtual RESULT setZoom(int what)=0; + + virtual RESULT setTrickmode(int what) = 0; }; #endif