X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/d80bb0a6b9862171d9901b6b19347b5e9f6279cd..f673194a5b82c456e06e93269e72270ce482cbcb:/lib/dvb/idemux.h diff --git a/lib/dvb/idemux.h b/lib/dvb/idemux.h index b04ad000..86b35fdb 100644 --- a/lib/dvb/idemux.h +++ b/lib/dvb/idemux.h @@ -3,50 +3,10 @@ #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: + virtual RESULT setBufferSize(int size)=0; virtual RESULT start(const eDVBSectionFilterMask &mask)=0; virtual RESULT stop()=0; virtual RESULT connectRead(const Slot1 &read, ePtr &conn)=0; @@ -56,6 +16,7 @@ public: class iDVBPESReader: public iObject { public: + virtual RESULT setBufferSize(int size)=0; virtual RESULT start(int pid)=0; virtual RESULT stop()=0; virtual RESULT connectRead(const Slot2 &read, ePtr &conn)=0; @@ -67,11 +28,12 @@ public: class iDVBTSRecorder: public iObject { public: + virtual RESULT setBufferSize(int size) = 0; virtual RESULT start() = 0; virtual RESULT addPID(int pid) = 0; virtual RESULT removePID(int pid) = 0; - virtual RESULT setTimingPID(int pid) = 0; + virtual RESULT setTimingPID(int pid, int type) = 0; virtual RESULT setTargetFD(int fd) = 0; /* for saving additional meta data. */ @@ -79,6 +41,8 @@ public: virtual RESULT setBoundary(off_t max) = 0; virtual RESULT stop() = 0; + + virtual RESULT getCurrentPCR(pts_t &pcr) = 0; enum { eventWriteError,