123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #ifndef PICBUF_H
- #define PICBUF_H
- #include <memory>
- #include <vector>
- #include <QMutex>
- #include <QDateTime>
- namespace iv {
- struct PicData
- {
- public:
- qint64 mnMsgTime;
- std::shared_ptr<char> mdata_ptr;
- unsigned int mdatasize;
- bool mbSPSFrame = false;
- };
- }
- class PicBuf
- {
- private:
- std::vector<iv::PicData> mvectordata_ptr;
- qint64 mBufTime = 1500;
- qint64 mnReceiveBufTime = 0;
- qint64 mLastBufTime = 0;
- QMutex mMutexBuf;
- private:
- int mnFrameRate = 0;
- qint64 mnSecondTime = 0; //Time Second.
- int mnFrameSecondCount =0; //Last Second Receive message
- qint64 mnUpLatency = 1000;
- public:
- PicBuf();
- PicBuf(const PicBuf & other);
- void AddData(iv::PicData xPicData);
- int GetData(qint64 & nLastTime,iv::PicData & xPicData); //0 No Data 1 Have Data
- int GetFrameRate();
- void SetLatency(qint64 nlatency);
- qint64 GetLatency();
- };
- #endif // PICBUF_H
|