From ffa3485e9d36911f3b6aeac7ddbcca61c3e3dde6 Mon Sep 17 00:00:00 2001 From: pansen <pansen626@sina.com> Date: 星期四, 10 一月 2019 20:12:15 +0800 Subject: [PATCH] Merge svn 3352 --- QiaoJiaSystem/StructureApp/NewRecordVideoElement.h | 58 +++++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 39 insertions(+), 19 deletions(-) diff --git a/QiaoJiaSystem/StructureApp/NewRecordVideoElement.h b/QiaoJiaSystem/StructureApp/NewRecordVideoElement.h index 8da45c7..17a40f9 100644 --- a/QiaoJiaSystem/StructureApp/NewRecordVideoElement.h +++ b/QiaoJiaSystem/StructureApp/NewRecordVideoElement.h @@ -1,13 +1,14 @@ #ifndef NEWRECORDVIDEOELEMENT_H #define NEWRECORDVIDEOELEMENT_H - +#include <basic/pipe/PipeElement.h> #include <basic/pipe_element/ffmpeg/FfmpegElement.h> -struct ImgInfo -{ - std::string time; - cv::Mat img; -}; -class NewRecordVideoElement { +#include "HiredisTool.h" +//struct ImgInfo +//{ +// std::string time; +// cv::Mat img; +//}; +class NewRecordVideoElement : public basic::PipeElement{ public: @@ -16,23 +17,42 @@ ~NewRecordVideoElement(); - std::string startRecord(); - - void doRecord(); - - void endRecord(); - - void pushImgBuf(const std::string& time,cv::Mat img); - - void getImg(ImgInfo& info); + void setSdkTrigger(bool isTrigger); + void pushImgBuf(const std::string& time,cv::Mat& img); private: - std::string getFileName(std::string timeStamp); - std::string makeDir(); + virtual void threadFunc() override; + virtual void threadInitial() override; +private: + void recordInit(int videoMin, int videoMax); + void Record(); + + int fileMin; + int fileMax; + bool sdkTrigger; + int triggerDelay; + +#define RECORD_STOP (0) +#define RECORD_DOING (1) +#define RECORD_ENDING (2) + + int recordStatus; + int videoLength; + int recordDelay; +private: + std::string startRecord(); + void doRecord(); + void endRecord(); + void getImg(ImgInfo& info); + std::string getFileName(const std::string& timeStamp); + std::string makeDir(const std::string& timeStamp); + ffmpeg::VideoEncodeElement videoEncoderElement; std::string camID; std::string m_cutPath; - std::list<ImgInfo> m_imgBufQue; + std::queue<ImgInfo> m_imgBufQue; + HiredisTool m_hiredisTool; + std::string m_filename; }; #endif // RECORDVIDEOELEMENT_H -- Gitblit v1.8.0