X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/1995abf236d34dd3264435a35f2c9c128cf3afaa..94508f85d46155eb05868cada7b34bb2b4a667a5:/lib/service/iservice.h diff --git a/lib/service/iservice.h b/lib/service/iservice.h index 2e88f235..bfdca1ba 100644 --- a/lib/service/iservice.h +++ b/lib/service/iservice.h @@ -426,9 +426,11 @@ struct iAudioTrackInfo #ifndef SWIG std::string m_description; std::string m_language; /* iso639 */ + int m_pid; /* for association with the stream. */ #endif std::string getDescription() { return m_description; } std::string getLanguage() { return m_language; } + int getPID() { return m_pid; } }; SWIG_ALLOW_OUTPUT_SIMPLE(iAudioTrackInfo); @@ -443,6 +445,7 @@ public: virtual int getNumberOfTracks()=0; virtual RESULT selectTrack(unsigned int i)=0; virtual SWIG_VOID(RESULT) getTrackInfo(struct iAudioTrackInfo &SWIG_OUTPUT, unsigned int n)=0; + virtual int getCurrentTrack()=0; }; SWIG_TEMPLATE_TYPEDEF(ePtr, iAudioTrackSelectionPtr); @@ -704,6 +707,25 @@ public: }; }; +SWIG_IGNORE(iStreamableService); +class iStreamableService: public iObject +{ +#ifdef SWIG + iStreamableService(); + ~iStreamableService(); +#endif +public: + /* returns a dict: + { "demux": , + "pids": [(x,type),(y,type),(z,type),..], + ... + } + with type being "video", "audio", "pmt", "pat"... + */ + virtual PyObject *getStreamingData()=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr, iStreamableServicePtr); + SWIG_IGNORE(iPlayableService); class iPlayableService: public iPlayableService_ENUMS, public iObject { @@ -732,28 +754,10 @@ public: virtual SWIG_VOID(RESULT) subtitle(ePtr &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) audioDelay(ePtr &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) rdsDecoder(ePtr &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) stream(ePtr &SWIG_OUTPUT)=0; }; SWIG_TEMPLATE_TYPEDEF(ePtr, iPlayableServicePtr); -SWIG_IGNORE(iStreamableService); -class iStreamableService: public iObject -{ -#ifdef SWIG - iStreamableService(); - ~iStreamableService(); -#endif -public: - /* returns a dict: - { "demux": , - "pids": [(x,type),(y,type),(z,type),..], - ... - } - with type being "video", "audio", "pmt", "pat"... - */ - virtual PyObject *getStreamingData()=0; -}; -SWIG_TEMPLATE_TYPEDEF(ePtr, iStreamableServicePtr); - class iRecordableService_ENUMS { #ifdef SWIG