| | |
| | | #ifndef _cffmpeg_wrapper_hpp_ |
| | | #define _cffmpeg_wrapper_hpp_ |
| | | |
| | | extern "C"{ |
| | | #include <libavcodec/avcodec.h> |
| | | } |
| | | |
| | | #include <stdint.h> |
| | | |
| | | #include <string> |
| | |
| | | |
| | | void cache_rec_info(int &index, std::string &path); |
| | | void cache_pic(std::shared_ptr<ffwrapper::FrameData> &frame); |
| | | |
| | | void cacheAVPacket(const AVPacket &pkt); |
| | | public: |
| | | int RunStream(const char* input); |
| | | private: |
| | |
| | | public: //decoder |
| | | void BuildDecoder(); |
| | | void GetPicDecoder(unsigned char **data, int *w, int *h); |
| | | void GetPacket(unsigned char **pktData, int *size, int *key); |
| | | //active api |
| | | void ActiveDecoder(FUNC_DEC fn); |
| | | |
| | |
| | | |
| | | std::list<pic_bgr24> list_pic_; |
| | | std::mutex mutex_pic_; |
| | | |
| | | std::list<AVPacket> list_avpkt_; |
| | | std::mutex mutex_avpkt_; |
| | | |
| | | // active api |
| | | FUNC_REC func_rec_; |
| | | FUNC_DEC func_dec_; |