From 373aaa44390761f0a2bd1800e49c678df3d68a8b Mon Sep 17 00:00:00 2001 From: pansen <pansen626@sina.com> Date: 星期三, 19 十二月 2018 19:48:53 +0800 Subject: [PATCH] 解决编译问题。 --- QiaoJiaSystem/StructureApp/NewRecordVideoElement.cpp | 257 ++++++++++++++++++++++++--------------------------- 1 files changed, 121 insertions(+), 136 deletions(-) diff --git a/QiaoJiaSystem/StructureApp/NewRecordVideoElement.cpp b/QiaoJiaSystem/StructureApp/NewRecordVideoElement.cpp index a46ad7c..f6829c7 100644 --- a/QiaoJiaSystem/StructureApp/NewRecordVideoElement.cpp +++ b/QiaoJiaSystem/StructureApp/NewRecordVideoElement.cpp @@ -3,16 +3,14 @@ //#todo index int -> string NewRecordVideoElement::NewRecordVideoElement(std::string camid) : -videoEncoderElement(cv::Size(1920, 1080), 5, 0), -camID(camid) -{ + videoEncoderElement(cv::Size(1920, 1080), 5, 0), camID(camid) { - // basicPath(); - m_cutPath= appPref.getStringData("user.loop.absolute.path"); + // basicPath(); + m_cutPath = appPref.getStringData("user.loop.absolute.path"); } NewRecordVideoElement::~NewRecordVideoElement() { - queue<ImgInfo> empty; + std::queue<ImgInfo> empty; empty.swap(m_imgBufQue); //m_imgBufQue.clear(); @@ -21,9 +19,9 @@ std::string NewRecordVideoElement::startRecord() { // ImgInfo info=m_HiredisTool.getImage(camID); - ImgInfo info; - getImg(info); - std::string srcPath= getFileName(info.time); + ImgInfo info; + getImg(info); + std::string srcPath = getFileName(info.time); // DBG("fisrt fps time"<<info.time); try { @@ -44,18 +42,16 @@ void NewRecordVideoElement::doRecord() { - - // ImgInfo info=m_HiredisTool.getImage(camID); - ImgInfo info; - getImg(info); + // ImgInfo info=m_HiredisTool.getImage(camID); + ImgInfo info; + getImg(info); // DBG(" time="<<info.time); videoEncoderElement.doFunc(info.img); } - std::string NewRecordVideoElement::getFileName(std::string timeStamp) -{ - std::string dirPath=makeDir(); +std::string NewRecordVideoElement::getFileName(std::string timeStamp) { + std::string dirPath = makeDir(); char szDateTime[256] = {0}; sprintf(szDateTime, "%s%s.mp4", dirPath.c_str(), timeStamp.c_str()); @@ -74,146 +70,135 @@ } char buf[24]; - time_t t=time(nullptr); - // 20180901113048 2018-09-01 11:30:48 - strftime(buf,24,"%Y%m%d%H",localtime(&t)); - std::string t_strTime(buf); - //# ./camIndex/YYYYMM/DD/ - t_FilePath.append(camID + "/" + t_strTime.substr(0, 6)+ "/" +t_strTime.substr(6, 2) + "/"); - //YYYYMMDDHH - t_FilePath.append(t_strTime.substr(0,10) + "/"); - std::string t_cmd = "mkdir -p '"; + time_t t = time(nullptr); + // 20180901113048 2018-09-01 11:30:48 + strftime(buf, 24, "%Y%m%d%H", localtime(&t)); + std::string t_strTime(buf); + //# ./camIndex/YYYYMM/DD/ + t_FilePath.append(camID + "/" + t_strTime.substr(0, 6) + "/" + t_strTime.substr(6, 2) + "/"); + //YYYYMMDDHH + t_FilePath.append(t_strTime.substr(0, 10) + "/"); + std::string t_cmd = "mkdir -p '"; t_cmd.append(t_FilePath + "'"); //#get path mkdir path system(t_cmd.c_str()); return t_FilePath; } -void NewRecordVideoElement::pushImgBuf(const std::string& time,cv::Mat& img) -{ - ImgInfo info; - img.copyTo(info.img); + +void NewRecordVideoElement::pushImgBuf(const std::string &time, cv::Mat &img) { + ImgInfo info; + img.copyTo(info.img); // info.img=img; - info.time=time; - m_imgBufQue.push(info); + info.time = time; + m_imgBufQue.push(info); // int size=m_imgBufQue.size(); // DBG("m_imgBufQue size="<<size); } - void NewRecordVideoElement::getImg(ImgInfo& info) - { - //todo - int len=20; - info=m_imgBufQue.front(); - int size=m_imgBufQue.size(); + +void NewRecordVideoElement::getImg(ImgInfo &info) { + //todo + int len = 20; + info = m_imgBufQue.front(); + int size = m_imgBufQue.size(); // DBG("m_imgBufQue size="<<size<<" time="<<info.time); - if(size>len) - { - m_imgBufQue.pop(); - } + if (size > len) { + m_imgBufQue.pop(); + } +} - } - void NewRecordVideoElement::threadFunc() - { - Record(); - } - void NewRecordVideoElement::threadInitial() - { - recordInit(40,100); - } +void NewRecordVideoElement::threadFunc() { + Record(); +} - void NewRecordVideoElement::Record() { - switch(recordStatus) - { - case RECORD_STOP: - // DBG("recordDelay:" << recordDelay); - // DBG("videoLength:" << videoLength); - // DBG("sdkTrigger:" << sdkTrigger); - videoLength = 0; - recordDelay = 0; - if(sdkTrigger){ - recordStatus = RECORD_DOING; - startRecord(); - } - else - { - ImgInfo info; - getImg(info); - } - break; +void NewRecordVideoElement::threadInitial() { + recordInit(40, 100); +} - case RECORD_DOING: - videoLength++; - if(sdkTrigger){ - if(videoLength < fileMax){ - doRecord(); - } - else - { - recordStatus = RECORD_STOP; - endRecord(); - } - } - else - { - recordStatus = RECORD_ENDING; - doRecord(); - } - break; +void NewRecordVideoElement::Record() { + switch (recordStatus) { + case RECORD_STOP: + // DBG("recordDelay:" << recordDelay); + // DBG("videoLength:" << videoLength); + // DBG("sdkTrigger:" << sdkTrigger); + videoLength = 0; + recordDelay = 0; + if (sdkTrigger) { + recordStatus = RECORD_DOING; + startRecord(); + } else { + ImgInfo info; + getImg(info); + } + break; - case RECORD_ENDING: + case RECORD_DOING: + videoLength++; + if (sdkTrigger) { + if (videoLength < fileMax) { + doRecord(); + } else { + recordStatus = RECORD_STOP; + endRecord(); + } + } else { + recordStatus = RECORD_ENDING; + doRecord(); + } + break; + + case RECORD_ENDING: // DBG("recordDelay:" << recordDelay); // DBG("videoLength:" << videoLength); // DBG("sdkTrigger:" << sdkTrigger); - recordDelay++; - videoLength++; - if(sdkTrigger){ - if( (recordDelay < fileMin/4) && - (videoLength < fileMax)){ - doRecord(); - }else{ - recordStatus = RECORD_STOP; - endRecord(); - } - }else{ - if( (recordDelay < fileMin/2) && - (videoLength < fileMax)){ + recordDelay++; + videoLength++; + if (sdkTrigger) { + if ((recordDelay < fileMin / 4) && + (videoLength < fileMax)) { doRecord(); - }else{ - recordStatus = RECORD_STOP; - endRecord(); - } - } - break; + } else { + recordStatus = RECORD_STOP; + endRecord(); + } + } else { + if ((recordDelay < fileMin / 2) && + (videoLength < fileMax)) { + doRecord(); + } else { + recordStatus = RECORD_STOP; + endRecord(); + } + } + break; - default: - break; - } - } - void NewRecordVideoElement::setSdkTrigger(bool isTrigger) { - if(isTrigger) - { - triggerDelay = 0; - sdkTrigger = true; - } - else - { - if(triggerDelay++ >= fileMin/2) { - sdkTrigger = false; - } - else{ - sdkTrigger = true; - } - } - } - void NewRecordVideoElement::recordInit(int videoMin, int videoMax) { - sdkTrigger = false; - fileMin = videoMin; - fileMax = videoMax; - triggerDelay = fileMin/2; + default: + break; + } +} - recordStatus = RECORD_STOP; - videoLength = 0; - recordDelay = 0; - } +void NewRecordVideoElement::setSdkTrigger(bool isTrigger) { + if (isTrigger) { + triggerDelay = 0; + sdkTrigger = true; + } else { + if (triggerDelay++ >= fileMin / 2) { + sdkTrigger = false; + } else { + sdkTrigger = true; + } + } +} + +void NewRecordVideoElement::recordInit(int videoMin, int videoMax) { + sdkTrigger = false; + fileMin = videoMin; + fileMax = videoMax; + triggerDelay = fileMin / 2; + + recordStatus = RECORD_STOP; + videoLength = 0; + recordDelay = 0; +} -- Gitblit v1.8.0