return ::open(filename, O_RDWR);
}
-int eDVBDemux::openDVR(void)
+int eDVBDemux::openDVR(int flags)
{
char filename[128];
snprintf(filename, 128, "/dev/dvb/adapter%d/dvr%d", adapter, demux);
- return ::open(filename, O_WRONLY);
+ return ::open(filename, flags);
}
DEFINE_REF(eDVBDemux)
RESULT getCADemuxID(uint8_t &id) { id = demux; return 0; }
RESULT flush();
RESULT connectEvent(const Slot1<void,int> &event, ePtr<eConnection> &conn);
- int openDVR(void);
+ int openDVR(int flags);
int getRefCount() { return ref; }
private:
ePtr<eDVBAllocatedDemux> &demux = m_demux ? m_demux : m_decoder_demux;
if (demux)
{
- m_pvr_fd_dst = demux->get().openDVR();
+ m_pvr_fd_dst = demux->get().openDVR(O_WRONLY);
if (m_pvr_fd_dst < 0)
{
eDebug("can't open /dev/dvb/adapterX/dvrX - you need to buy the new(!) $$$ box! (%m)"); // or wait for the driver to be improved.
virtual RESULT getSTC(pts_t &pts, int num=0)=0;
virtual RESULT getCADemuxID(uint8_t &id)=0;
virtual RESULT flush()=0;
+ int openDVR(int flags)=0;
};
#if HAVE_DVB_API_VERSION < 3 && !defined(VIDEO_EVENT_SIZE_CHANGED)