X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/f9aafeeb6715c4d5970bdad0f77fd0a7c9003163..37b38cb05fc6bc4993f852a78bdba93c7627cf5b:/lib/dvb/decoder.h diff --git a/lib/dvb/decoder.h b/lib/dvb/decoder.h index bcf3eb38..05e07ef9 100644 --- a/lib/dvb/decoder.h +++ b/lib/dvb/decoder.h @@ -8,10 +8,10 @@ class eSocketNotifier; class eDVBAudio: public iObject { -DECLARE_REF(eDVBAudio); + DECLARE_REF(eDVBAudio); private: ePtr m_demux; - int m_fd, m_fd_demux, m_dev; + int m_fd, m_fd_demux, m_dev, m_is_freezed; public: enum { aMPEG, aAC3, aDTS, aAAC }; eDVBAudio(eDVBDemux *demux, int dev); @@ -36,13 +36,15 @@ public: class eDVBVideo: public iObject, public Object { -DECLARE_REF(eDVBVideo); + DECLARE_REF(eDVBVideo); private: ePtr m_demux; int m_fd, m_fd_demux, m_dev; - - int m_is_slow_motion, m_is_fast_forward; - eSocketNotifier *m_sn; +#if HAVE_DVB_API_VERSION < 3 + m_fd_video; +#endif + int m_is_slow_motion, m_is_fast_forward, m_is_freezed; + ePtr m_sn; void video_event(int what); Signal1 m_event; public: @@ -69,7 +71,7 @@ public: class eDVBPCR: public iObject { -DECLARE_REF(eDVBPCR); + DECLARE_REF(eDVBPCR); private: ePtr m_demux; int m_fd_demux; @@ -87,7 +89,7 @@ public: class eDVBTText: public iObject { -DECLARE_REF(eDVBTText); + DECLARE_REF(eDVBTText); private: ePtr m_demux; int m_fd_demux; @@ -100,12 +102,12 @@ public: class eTSMPEGDecoder: public Object, public iTSMPEGDecoder { + DECLARE_REF(eTSMPEGDecoder); +private: static int m_pcm_delay; static int m_ac3_delay; static int m_audio_channel; -DECLARE_REF(eTSMPEGDecoder); std::string m_radio_pic; -private: ePtr m_demux; ePtr m_audio; ePtr m_video; @@ -128,6 +130,9 @@ private: void demux_event(int event); void video_event(struct videoEvent); Signal1 m_video_event; + int m_video_clip_fd; + ePtr m_showSinglePicTimer; + void finishShowSinglePic(); // called by timer public: enum { pidNone = -1 }; eTSMPEGDecoder(eDVBDemux *demux, int decoder);