#include #include #include "common_header.h" #include "../interface/AbstractDecoder.h" using namespace std; class FFNvDecoder; class NvDecoderApi : public AbstractDecoder{ public: NvDecoderApi(); ~NvDecoderApi(); bool init(FFDecConfig& cfg); void close(); bool start(); void pause(); void resume(); void setDecKeyframe(bool bKeyframe); bool isRunning(); bool isFinished(); bool isPausing(); bool getResolution( int &width, int &height ); bool isSurport(FFDecConfig& cfg); int getCachedQueueLength(); float fps(); FFImgInfo* snapshot(); DECODER_TYPE getDecoderType(){ return DECODER_TYPE_DVPP; } void setName(string nm); string getName(); void setPostDecArg(const void* postDecArg); void setFinishedDecArg(const void* finishedDecArg); private: FFNvDecoder* m_pDecoder; };