diff options
Diffstat (limited to 'lib/dvb/decoder.h')
| -rw-r--r-- | lib/dvb/decoder.h | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/lib/dvb/decoder.h b/lib/dvb/decoder.h index fb543fed..f1d074db 100644 --- a/lib/dvb/decoder.h +++ b/lib/dvb/decoder.h @@ -62,6 +62,19 @@ public: virtual ~eDVBPCR(); }; +class eDVBVText: public iObject +{ +DECLARE_REF(eDVBVText); +private: + ePtr<eDVBDemux> m_demux; + int m_fd_demux; +public: + eDVBVText(eDVBDemux *demux); + int startPid(int pid); + void stop(); + virtual ~eDVBVText(); +}; + class eTSMPEGDecoder: public Object, public iTSMPEGDecoder { DECLARE_REF(eTSMPEGDecoder); @@ -70,12 +83,14 @@ private: ePtr<eDVBAudio> m_audio; ePtr<eDVBVideo> m_video; ePtr<eDVBPCR> m_pcr; - int m_vpid, m_apid, m_atype, m_pcrpid; + ePtr<eDVBVText> m_text; + int m_vpid, m_apid, m_atype, m_pcrpid, m_textpid; enum { changeVideo = 1, changeAudio = 2, - changePCR = 4 + changePCR = 4, + changeText = 8 }; int m_changed; int m_is_ff, m_is_sm, m_is_trickmode; @@ -90,6 +105,7 @@ public: RESULT setVideoPID(int vpid); RESULT setAudioPID(int apid, int type); RESULT setSyncPCR(int pcrpid); + RESULT setTextPID(int textpid); RESULT setSyncMaster(int who); RESULT start(); RESULT freeze(int cont); |
