| | |
| | | |
| | | bool openCodec(const int type, AVDictionary **options); |
| | | |
| | | bool readPacket(AVPacket &pkt_out, int stream_index = 0); |
| | | bool readPacket(std::shared_ptr<CodedData> &data, int stream_index = 0); |
| | | bool readPacket(AVPacket &pkt_out); |
| | | bool readPacket(std::shared_ptr<CodedData> &data); |
| | | |
| | | int decode(AVFrame* &frame, AVPacket &pkt); |
| | | int decode(std::shared_ptr<FrameData> &frame_data, |
| | |
| | | int readFrame(AVFrame* &frame); |
| | | int readFrame(std::shared_ptr<FrameData> &frame_data); |
| | | |
| | | bool isVideoPkt(AVPacket &pkt); |
| | | bool isAudioPkt(AVPacket &pkt); |
| | | private: |
| | | bool allocCodec(AVCodec *dec, AVStream *s, AVDictionary **options); |
| | | public: |
| | | AVStream *getStream(int type = 0); |
| | | AVStream *getStream(int type = -1); |
| | | AVCodecContext *getCodecContext(int type = 0); |
| | | const double getFPS()const{return fps_;} |
| | | private: |
| | | AVFormatContext *ctx_; |
| | | AVCodecContext *dec_ctx_; |
| | | int vs_idx_; |
| | | int as_idx_; |
| | | |
| | | bool hw_accl_; |
| | | |
| | | double fps_; |
| | | private: |
| | | AVIOContext *io_ctx_; |
| | | uint8_t *read_io_buff_; |