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);
20 class eDVBVideo: public iObject
22 DECLARE_REF(eDVBVideo);
24 ePtr<eDVBDemux> m_demux;
27 eDVBVideo(eDVBDemux *demux, int dev);
28 int startPid(int pid);
33 class eDVBPCR: public iObject
37 ePtr<eDVBDemux> m_demux;
40 eDVBPCR(eDVBDemux *demux);
41 int startPid(int pid);
46 class eTSMPEGDecoder: public iTSMPEGDecoder
48 DECLARE_REF(eTSMPEGDecoder);
50 ePtr<eDVBDemux> m_demux;
51 ePtr<eDVBAudio> m_audio;
52 ePtr<eDVBVideo> m_video;
54 int m_vpid, m_apid, m_atype, m_pcrpid;
64 enum { pidNone = -1 };
65 eTSMPEGDecoder(eDVBDemux *demux, int decoder);
66 virtual ~eTSMPEGDecoder();
67 RESULT setVideoPID(int vpid);
68 RESULT setAudioPID(int apid, int type);
69 RESULT setSyncPCR(int pcrpid);
70 RESULT setSyncMaster(int who);
72 RESULT freeze(int cont);
74 RESULT setSinglePictureMode(int when);
75 RESULT setPictureSkipMode(int what);
76 RESULT setSlowMotion(int repeat);
77 RESULT setZoom(int what);