X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/1573e3dc168002939adff026d11e60359ba1d3ad..995273c1f71c79d72fa75da25da4a03bd83ac9a4:/lib/service/servicedvb.h diff --git a/lib/service/servicedvb.h b/lib/service/servicedvb.h index d725087c..0bd12bd8 100644 --- a/lib/service/servicedvb.h +++ b/lib/service/servicedvb.h @@ -38,7 +38,7 @@ class eBouquet; class eDVBServiceList: public iListableService, public iMutableServiceList { -DECLARE_REF(eDVBServiceList); + DECLARE_REF(eDVBServiceList); public: virtual ~eDVBServiceList(); PyObject *getContent(const char* formatstr, bool sorted=false); @@ -89,9 +89,9 @@ class eDVBServicePlay: public eDVBServiceBase, public iAudioTrackSelection, public iAudioChannelSelection, public iSubserviceList, public iTimeshiftService, public iCueSheet, public iSubtitleOutput, public iAudioDelay, - public iRdsDecoder + public iRdsDecoder, public iStreamableService { -DECLARE_REF(eDVBServicePlay); + DECLARE_REF(eDVBServicePlay); public: virtual ~eDVBServicePlay(); @@ -113,6 +113,7 @@ public: RESULT subtitle(ePtr &ptr); RESULT audioDelay(ePtr &ptr); RESULT rdsDecoder(ePtr &ptr); + RESULT keys(ePtr &ptr) { ptr = 0; return -1; } // iPauseableService RESULT pause(); @@ -139,6 +140,7 @@ public: int getNumberOfTracks(); RESULT selectTrack(unsigned int i); RESULT getTrackInfo(struct iAudioTrackInfo &, unsigned int n); + int getCurrentTrack(); // iAudioChannelSelection int getCurrentChannel(); @@ -176,7 +178,10 @@ public: int getPCMDelay(); void setAC3Delay(int); void setPCMDelay(int); - + + // iStreamableService + RESULT stream(ePtr &ptr); + PyObject *getStreamingData(); private: friend class eServiceFactoryDVB; eServiceReference m_reference; @@ -191,6 +196,7 @@ private: /* in timeshift mode, we essentially have two channels, and thus pmt handlers. */ eDVBServicePMTHandler m_service_handler_timeshift; eDVBServiceEITHandler m_event_handler; + int m_current_audio_pid; eDVBServicePlay(const eServiceReference &ref, eDVBService *service); @@ -211,7 +217,7 @@ private: ePtr m_decode_demux; int m_current_audio_stream; - int selectAudioStream(int n); + int selectAudioStream(int n = -1); /* timeshift */ ePtr m_record; @@ -221,7 +227,7 @@ private: void switchToLive(); void switchToTimeshift(); - void updateDecoder(int intopause=0); + void updateDecoder(); int m_skipmode;