X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fdvb%2Fdemux.cpp;h=0d0392756a28da0982fa2d8fcb5e2dc3513c2ffd;hp=0c736c55c23e1cfc55de9e1f0a2c5a793b01a22b;hb=27e06ba9c8b055c20ea8c70a405deb0e4019edc5;hpb=fb6837ec4df004b6a4bbf6f695dd17bed53e2f4c diff --git a/lib/dvb/demux.cpp b/lib/dvb/demux.cpp index 0c736c5..0d03927 100644 --- a/lib/dvb/demux.cpp +++ b/lib/dvb/demux.cpp @@ -85,6 +85,13 @@ int eDVBDemux::openDemux(void) return ::open(filename, O_RDWR); } +int eDVBDemux::openDVR(int flags) +{ + char filename[128]; + snprintf(filename, 128, "/dev/dvb/adapter%d/dvr%d", adapter, demux); + return ::open(filename, flags); +} + DEFINE_REF(eDVBDemux) RESULT eDVBDemux::setSourceFrontend(int fenum) @@ -446,6 +453,7 @@ public: void startSaveMetaInformation(const std::string &filename); void stopSaveMetaInformation(); + void enableAccessPoints(bool enable); int getLastPTS(pts_t &pts); protected: int filterRecordData(const unsigned char *data, int len, size_t ¤t_span_remaining); @@ -478,6 +486,11 @@ void eDVBRecordFileThread::stopSaveMetaInformation() m_stream_info.stopSave(); } +void eDVBRecordFileThread::enableAccessPoints(bool enable) +{ + m_ts_parser.enableAccessPoints(enable); +} + int eDVBRecordFileThread::getLastPTS(pts_t &pts) { return m_ts_parser.getLastPTS(pts); @@ -641,6 +654,12 @@ RESULT eDVBTSRecorder::setTargetFilename(const char *filename) return 0; } +RESULT eDVBTSRecorder::enableAccessPoints(bool enable) +{ + m_thread->enableAccessPoints(enable); + return 0; +} + RESULT eDVBTSRecorder::setBoundary(off_t max) { return -1; // not yet implemented