X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/56f5fa20371cd5a761dc37a6dd0dd730c38e0cbc..5b87acc720b038d3ff8e9cd09b792342987a494a:/lib/dvb/idemux.h diff --git a/lib/dvb/idemux.h b/lib/dvb/idemux.h index 85119925..9432afb6 100644 --- a/lib/dvb/idemux.h +++ b/lib/dvb/idemux.h @@ -3,47 +3,6 @@ #include -#ifndef DMX_FILTER_SIZE -#define DMX_FILTER_SIZE 16 -#endif - -struct eDVBSectionFilterMask -{ - int pid; - /* mode is 0 for positive, 1 for negative filtering */ - __u8 data[DMX_FILTER_SIZE], mask[DMX_FILTER_SIZE], mode[DMX_FILTER_SIZE]; - enum { - rfCRC=1, - rfNoAbort=2 - }; - int flags; -}; - -struct eDVBTableSpec -{ - int pid, tid, tidext, tid_mask, tidext_mask; - int version; - int timeout; /* timeout in ms */ - enum - { - tfInOrder=1, - /* - tfAnyVersion filter ANY version - 0 filter all EXCEPT given version (negative filtering) - tfThisVersion filter only THIS version - */ - tfAnyVersion=2, - tfThisVersion=4, - tfHaveTID=8, - tfHaveTIDExt=16, - tfCheckCRC=32, - tfHaveTimeout=64, - tfHaveTIDMask=128, - tfHaveTIDExtMask=256 - }; - int flags; -}; - class iDVBSectionReader: public iObject { public: @@ -53,6 +12,15 @@ public: virtual ~iDVBSectionReader() { }; }; +class iDVBPESReader: public iObject +{ +public: + virtual RESULT start(int pid)=0; + virtual RESULT stop()=0; + virtual RESULT connectRead(const Slot2 &read, ePtr &conn)=0; + virtual ~iDVBPESReader() { }; +}; + /* records a given set of pids into a file descriptor. */ /* the FD must not be modified between start() and stop() ! */ class iDVBTSRecorder: public iObject @@ -70,6 +38,8 @@ public: virtual RESULT setBoundary(off_t max) = 0; virtual RESULT stop() = 0; + + virtual RESULT getCurrentPCR(pts_t &pcr) = 0; enum { eventWriteError,