Merge branch 'master' of /home/tmbinc/enigma2-git into tmbinc/FixTimingBugs
[enigma2.git] / lib / dvb / tstools.h
index 175cef669833983daf39e470a8c5d2e567d6529f..a8e0751ec1e7668d0420089c3dcb42a3353f335f 100644 (file)
@@ -18,7 +18,7 @@ public:
        eDVBTSTools();
        ~eDVBTSTools();
 
-       int openFile(const char *filename);
+       int openFile(const char *filename, int nostreaminfo = 0);
        void closeFile();
        
        void setSyncPID(int pid);
@@ -40,7 +40,7 @@ public:
        int fixupPTS(const off_t &offset, pts_t &pts);
        
                /* get (approximate) offset corresponding to PTS */
-       int getOffset(off_t &offset, pts_t &pts);
+       int getOffset(off_t &offset, pts_t &pts, int marg=0);
        
        int getNextAccessPoint(pts_t &ts, const pts_t &start, int direction);
        
@@ -52,8 +52,11 @@ public:
        int calcBitrate(); /* in bits/sec */
        
        void takeSamples();
+       int takeSample(off_t off, pts_t &p);
        
        int findPMT(int &pmt_pid, int &service_id);
+       
+       int findIFrame(off_t &offset, size_t &len, int direction);
 private:
        int m_pid;
        int m_maxrange;
@@ -70,6 +73,8 @@ private:
        
        eMPEGStreamInformation m_streaminfo;
        int m_use_streaminfo;
+       off_t m_last_filelength;
+       int m_futile;
 };
 
 #endif