4 #include <lib/base/object.h>
5 #include <lib/dvb/demux.h>
7 class eDVBAudio: public iObject
9 DECLARE_REF(eDVBAudio);
11 ePtr<eDVBDemux> m_demux;
14 eDVBAudio(eDVBDemux *demux, int dev);
15 int startPid(int pid);
17 #if HAVE_DVB_API_VERSION < 3
24 class eDVBVideo: public iObject
26 DECLARE_REF(eDVBVideo);
28 ePtr<eDVBDemux> m_demux;
31 eDVBVideo(eDVBDemux *demux, int dev);
32 int startPid(int pid);
34 #if HAVE_DVB_API_VERSION < 3
41 class eDVBPCR: public iObject
45 ePtr<eDVBDemux> m_demux;
48 eDVBPCR(eDVBDemux *demux);
49 int startPid(int pid);
54 class eTSMPEGDecoder: public iTSMPEGDecoder
56 DECLARE_REF(eTSMPEGDecoder);
58 ePtr<eDVBDemux> m_demux;
59 ePtr<eDVBAudio> m_audio;
60 ePtr<eDVBVideo> m_video;
62 int m_vpid, m_apid, m_atype, m_pcrpid;
72 enum { pidNone = -1 };
73 eTSMPEGDecoder(eDVBDemux *demux, int decoder);
74 virtual ~eTSMPEGDecoder();
75 RESULT setVideoPID(int vpid);
76 RESULT setAudioPID(int apid, int type);
77 RESULT setSyncPCR(int pcrpid);
78 RESULT setSyncMaster(int who);
80 RESULT freeze(int cont);
82 RESULT setSinglePictureMode(int when);
83 RESULT setPictureSkipMode(int what);
84 RESULT setSlowMotion(int repeat);
85 RESULT setZoom(int what);