ePtr<eDVBDemux> 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 };
eDVBAudio(eDVBDemux *demux, int dev);
enum { aMonoLeft, aStereo, aMonoRight };
void setChannel(int channel);
ePtr<eSocketNotifier> m_sn;
void video_event(int what);
Signal1<void, struct iTSMPEGDecoder::videoEvent> 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
int getPTS(pts_t &now);
virtual ~eDVBVideo();
RESULT connectEvent(const Slot1<void, struct iTSMPEGDecoder::videoEvent> &event, ePtr<eConnection> &conn);
+ int getWidth();
+ int getHeight();
+ int getProgressive();
+ int getFrameRate();
+ int getAspect();
};
class eDVBPCR: public iObject
DECLARE_REF(eDVBPCR);
private:
ePtr<eDVBDemux> 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();
DECLARE_REF(eDVBTText);
private:
ePtr<eDVBDemux> 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();
/* what 0=auto, 1=video, 2=audio. */
RESULT getPTS(int what, pts_t &pts);
RESULT connectVideoEvent(const Slot1<void, struct videoEvent> &event, ePtr<eConnection> &connection);
+ int getVideoWidth();
+ int getVideoHeight();
+ int getVideoProgressive();
+ int getVideoFrameRate();
+ int getVideoAspect();
};
#endif