X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/4f7990ff2a55874b9eb65e3c9cd47dacb9f76deb..e7e5b70162a6e74d7ee293495635c79660e0f7a8:/lib/dvb/decoder.h diff --git a/lib/dvb/decoder.h b/lib/dvb/decoder.h index 04501fe6..b53638b5 100644 --- a/lib/dvb/decoder.h +++ b/lib/dvb/decoder.h @@ -13,7 +13,7 @@ private: ePtr m_demux; int m_fd, m_fd_demux, m_dev, m_is_freezed; public: - enum { aMPEG, aAC3, aDTS, aAAC }; + enum { aMPEG, aAC3, aDTS, aAAC, aAACHE, aLPCM }; eDVBAudio(eDVBDemux *demux, int dev); enum { aMonoLeft, aStereo, aMonoRight }; void setChannel(int channel); @@ -47,8 +47,9 @@ private: ePtr m_sn; void video_event(int what); Signal1 m_event; + int m_width, m_height, m_framerate, m_aspect, m_progressive; public: - enum { MPEG2, MPEG4_H264 }; + enum { MPEG2, MPEG4_H264, MPEG1, MPEG4_Part2, VC1, VC1_SM }; eDVBVideo(eDVBDemux *demux, int dev); void stop(); #if HAVE_DVB_API_VERSION < 3 @@ -67,6 +68,11 @@ public: int getPTS(pts_t &now); virtual ~eDVBVideo(); RESULT connectEvent(const Slot1 &event, ePtr &conn); + int getWidth(); + int getHeight(); + int getProgressive(); + int getFrameRate(); + int getAspect(); }; class eDVBPCR: public iObject @@ -74,9 +80,9 @@ class eDVBPCR: public iObject DECLARE_REF(eDVBPCR); private: ePtr m_demux; - int m_fd_demux; + int m_fd_demux, m_dev; public: - eDVBPCR(eDVBDemux *demux); + eDVBPCR(eDVBDemux *demux, int dev); #if HAVE_DVB_API_VERSION < 3 int setPid(int pid); int startPid(); @@ -92,9 +98,9 @@ class eDVBTText: public iObject DECLARE_REF(eDVBTText); private: ePtr m_demux; - int m_fd_demux; + int m_fd_demux, m_dev; public: - eDVBTText(eDVBDemux *demux); + eDVBTText(eDVBDemux *demux, int dev); int startPid(int pid); void stop(); virtual ~eDVBTText(); @@ -182,6 +188,11 @@ public: /* what 0=auto, 1=video, 2=audio. */ RESULT getPTS(int what, pts_t &pts); RESULT connectVideoEvent(const Slot1 &event, ePtr &connection); + int getVideoWidth(); + int getVideoHeight(); + int getVideoProgressive(); + int getVideoFrameRate(); + int getVideoAspect(); }; #endif