[FCC] Fix to perform normal decoding for usb tuner on FCC mode.
[vuplus_dvbapp] / lib / dvb / idvb.h
index e56a2c7..bc444b3 100644 (file)
@@ -277,9 +277,9 @@ class eDVBService: public iStaticServiceInformation
 public:
        enum cacheID
        {
-               cVPID, cAPID, cTPID, cPCRPID, cAC3PID,
+               cVPID, cMPEGAPID, cTPID, cPCRPID, cAC3PID,
                cVTYPE, cACHANNEL, cAC3DELAY, cPCMDELAY,
-               cSUBTITLE, cacheMax
+               cSUBTITLE, cAACHEAPID=12, cDDPPID, cAACAPID, cacheMax
        };
 
        int getCacheEntry(cacheID);
@@ -451,14 +451,13 @@ public:
        enum { stateIdle, stateTuning, stateFailed, stateLock, stateLostLock, stateClosed };
        enum { toneOff, toneOn };
        enum { voltageOff, voltage13, voltage18, voltage13_5, voltage18_5 };
-       enum { bitErrorRate, signalPower, signalQuality, locked, synced, frontendNumber, signalQualitydB };
+       enum { bitErrorRate, signalPower, signalQuality, locked, synced, frontendNumber, signalQualitydB, isUsbTuner };
 };
 
 SWIG_IGNORE(iDVBFrontend);
 class iDVBFrontend: public iDVBFrontend_ENUMS, public iObject
 {
 public:
-       virtual RESULT getFrontendType(int &SWIG_OUTPUT)=0;
        virtual RESULT tune(const iDVBFrontendParameters &where)=0;
        virtual int closeFrontend(bool force = false, bool no_delayed = false)=0;
        virtual void reopenFrontend()=0;
@@ -492,7 +491,7 @@ class iDVBSatelliteEquipmentControl: public iObject
 {
 public:
        virtual RESULT prepare(iDVBFrontend &frontend, FRONTENDPARAMETERS &parm, const eDVBFrontendParametersSatellite &sat, int frontend_id, unsigned int timeout)=0;
-       virtual void prepareTurnOffSatCR(iDVBFrontend &frontend, int satcr)=0;
+       virtual void prepareTurnOffSatCR(iDVBFrontend &frontend)=0;
        virtual int canTune(const eDVBFrontendParametersSatellite &feparm, iDVBFrontend *fe, int frontend_id, int *highest_score_lnb=0)=0;
        virtual void setRotorMoving(int slotid, bool)=0;
 };
@@ -636,6 +635,8 @@ public:
        virtual RESULT getSTC(pts_t &pts, int num=0)=0;
        virtual RESULT getCADemuxID(uint8_t &id)=0;
        virtual RESULT flush()=0;
+       virtual int openDVR(int flags)=0;
+       virtual int getSource()=0;
 };
 
 #if HAVE_DVB_API_VERSION < 3 && !defined(VIDEO_EVENT_SIZE_CHANGED)
@@ -690,6 +691,14 @@ public:
 
                /** Display any complete data as fast as possible */
        virtual RESULT setTrickmode()=0;
+
+       virtual RESULT prepareFCC(int fe_id, int vpid, int vtype, int pcrpid)=0;
+
+       virtual RESULT fccDecoderStart()=0;
+
+       virtual RESULT fccDecoderStop()=0;
+
+       virtual RESULT fccUpdatePids(int fe_id, int vpid, int vtype, int pcrpid)=0;
        
        virtual RESULT getPTS(int what, pts_t &pts) = 0;