sFileSize,
sCAIDs,
+ sCAIDPIDs,
sVideoType, /* MPEG2 MPEG4 */
sTags, /* space seperated list of tags */
sTagCRC,
sTagChannelMode,
+ sTransferBPS,
+
+ sHBBTVUrl,
+ sLiveStreamDemuxId,
+ sIsScrambled,
+
sUser = 0x100
};
enum {
#endif
public:
virtual RESULT startTimeshift()=0;
- virtual RESULT stopTimeshift()=0;
+ virtual RESULT stopTimeshift(bool swToLive=true)=0;
+ virtual RESULT setNextPlaybackFile(const char *fn)=0; // not needed by our internal timeshift.. but external plugin...
virtual int isTimeshiftActive()=0;
/* this essentially seeks to the relative end of the timeshift buffer */
/* for transferring a service... */
virtual SWIG_VOID(RESULT) getListOfFilenames(std::list<std::string> &SWIG_OUTPUT)=0;
+
+ /* a blocking call to reindex a file */
+ virtual int reindex() = 0;
// TODO: additional stuff, like a conversion interface?
};
evBuffering,
evStopped,
+ evHBBTVInfo,
+
+ evFccFailed,
evUser = 0x100
};
evNewProgramInfo,
evRecordFailed,
evRecordWriteError,
- evNewEventInfo
+ evNewEventInfo,
+ evTuneStart,
+ evPvrTuneStart,
+ evPvrEof,
};
enum {
NoError=0,
errTuneFailed=-255,
errMisconfiguration = -256,
errNoResources = -257,
+ errNoCiConnected = -258
};
};
virtual RESULT connectEvent(const Slot2<void,iRecordableService*,int> &event, ePtr<eConnection> &connection)=0;
#endif
virtual SWIG_VOID(RESULT) getError(int &SWIG_OUTPUT)=0;
- virtual RESULT prepare(const char *filename, time_t begTime=-1, time_t endTime=-1, int eit_event_id=-1, const char *name=0, const char *descr=0, const char *tags=0)=0;
+ virtual RESULT prepare(const char *filename, time_t begTime=-1, time_t endTime=-1, int eit_event_id=-1, const char *name=0, const char *descr=0, const char *tags=0, bool descramble = true, bool recordecm = false)=0;
virtual RESULT prepareStreaming()=0;
virtual RESULT start(bool simulate=false)=0;
virtual RESULT stop()=0;
virtual SWIG_VOID(RESULT) frontendInfo(ePtr<iFrontendInformation> &SWIG_OUTPUT)=0;
virtual SWIG_VOID(RESULT) stream(ePtr<iStreamableService> &SWIG_OUTPUT)=0;
virtual SWIG_VOID(RESULT) subServices(ePtr<iSubserviceList> &SWIG_OUTPUT)=0;
+ virtual SWIG_VOID(RESULT) getServiceType(int &SWIG_OUTPUT)=0;
};
SWIG_TEMPLATE_TYPEDEF(ePtr<iRecordableService>, iRecordableServicePtr);