git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
timer: add name/description, factor out "parse from epg event", fix some cases where...
[enigma2.git]
/
lib
/
dvb
/
decoder.h
diff --git
a/lib/dvb/decoder.h
b/lib/dvb/decoder.h
index df63955189a7a5afc02c2ed768221a6becdd5797..d1f040ec180852f8d2abacbefd5c1ebd1cdae0e1 100644
(file)
--- a/
lib/dvb/decoder.h
+++ b/
lib/dvb/decoder.h
@@
-11,13
+11,17
@@
private:
ePtr<eDVBDemux> m_demux;
int m_fd, m_fd_demux;
public:
ePtr<eDVBDemux> m_demux;
int m_fd, m_fd_demux;
public:
+ enum {aMPEG, aAC3, aDTS };
eDVBAudio(eDVBDemux *demux, int dev);
eDVBAudio(eDVBDemux *demux, int dev);
- int startPid(int pid);
+ int startPid(int pid
, int type
);
void stop();
#if HAVE_DVB_API_VERSION < 3
void start();
void stopPid();
#endif
void stop();
#if HAVE_DVB_API_VERSION < 3
void start();
void stopPid();
#endif
+ void flush();
+ void freeze();
+ void unfreeze();
virtual ~eDVBAudio();
};
virtual ~eDVBAudio();
};
@@
-27,6
+31,8
@@
DECLARE_REF(eDVBVideo);
private:
ePtr<eDVBDemux> m_demux;
int m_fd, m_fd_demux;
private:
ePtr<eDVBDemux> m_demux;
int m_fd, m_fd_demux;
+
+ int m_is_slow_motion, m_is_fast_forward;
public:
eDVBVideo(eDVBDemux *demux, int dev);
int startPid(int pid);
public:
eDVBVideo(eDVBDemux *demux, int dev);
int startPid(int pid);
@@
-35,6
+41,11
@@
public:
void start();
void stopPid();
#endif
void start();
void stopPid();
#endif
+ void flush();
+ void freeze();
+ int setSlowMotion(int repeat);
+ int setFastForward(int skip);
+ void unfreeze();
virtual ~eDVBVideo();
};
virtual ~eDVBVideo();
};
@@
-51,7
+62,7
@@
public:
virtual ~eDVBPCR();
};
virtual ~eDVBPCR();
};
-class eTSMPEGDecoder: public iTSMPEGDecoder
+class eTSMPEGDecoder: public
Object, public
iTSMPEGDecoder
{
DECLARE_REF(eTSMPEGDecoder);
private:
{
DECLARE_REF(eTSMPEGDecoder);
private:
@@
-68,6
+79,9
@@
private:
};
int m_changed;
int setState();
};
int m_changed;
int setState();
+ ePtr<eConnection> m_demux_event;
+
+ void demux_event(int event);
public:
enum { pidNone = -1 };
eTSMPEGDecoder(eDVBDemux *demux, int decoder);
public:
enum { pidNone = -1 };
eTSMPEGDecoder(eDVBDemux *demux, int decoder);
@@
-81,7
+95,9
@@
public:
RESULT unfreeze();
RESULT setSinglePictureMode(int when);
RESULT setPictureSkipMode(int what);
RESULT unfreeze();
RESULT setSinglePictureMode(int when);
RESULT setPictureSkipMode(int what);
+ RESULT setFastForward(int frames_to_skip);
RESULT setSlowMotion(int repeat);
RESULT setZoom(int what);
RESULT setSlowMotion(int repeat);
RESULT setZoom(int what);
+ RESULT flush();
};
#endif
};
#endif