派生自 development/c++

zhangjixing
2019-01-24 f676f7af18163b4532b6b982bbe1dc57b32e96dd
QiaoJiaSystem/StructureApp/NewRecordVideoElement.cpp
@@ -5,10 +5,12 @@
//#todo index int -> string
NewRecordVideoElement::NewRecordVideoElement(std::string camid) :
//videoEncoderElement(cv::Size(1920, 1080), 5, 0),
camID(camid)
camID(camid),
m_bSaveWH(false)
{
   // basicPath();
    //isRecord=false;
    m_cutPath= appPref.getStringData("user.loop.absolute.path");
     recordInit(appPref.getIntData("n_cut_min_duration"),appPref.getIntData("n_cut_max_duration"));
@@ -18,17 +20,23 @@
    std::queue<ImgInfo> empty;
    empty.swap(m_imgBufQue);
//m_imgBufQue.clear();
}
std::string NewRecordVideoElement::startRecord() {
//    ImgInfo info=m_HiredisTool.getImage(camID);
     ImgInfo info;
     getImg(info);
    std::string srcPath= getFileName(info.time);
    m_filename=srcPath;
   // DBG("m_filename: " << m_filename);
    if(!m_bSaveWH)
    {
       m_bSaveWH=m_hiredisTool.hashSet(camID,"width",info.img.cols) && m_hiredisTool.hashSet(camID,"height",info.img.rows);
       DBG("m_bSaveWH="<<m_bSaveWH);
    }
    m_hiredisTool.pushImageBuf(m_filename,info.img);
     m_hiredisTool.addFileInfo(m_filename,RECORD_DOING);
@@ -45,6 +53,7 @@
//    DBG("sdkTrigger:" << sdkTrigger);
    m_hiredisTool.pushImageBuf(m_filename,info.img);
    m_hiredisTool.addFileInfo(m_filename,RECORD_ENDING);
}
void NewRecordVideoElement::doRecord() {
@@ -94,16 +103,22 @@
}
void NewRecordVideoElement::pushImgBuf(const std::string& time,cv::Mat& img)
{
//    std::string tmp="camId="+camID+"pushImgBuf";
//    ClockTimer cl(tmp);
     ImgInfo info;
     img.copyTo(info.img);
//     info.img=img;
     info.time=time;
     m_imgBufQue.push(info);
    // if(isRecord)
    // DBG("camId="<<camID<<"pushtime="<<info.time);
//     int size=m_imgBufQue.size();
//     DBG("m_imgBufQue size="<<size);
}
 void NewRecordVideoElement::getImg(ImgInfo& info)
 {
//     std::string tmp="camId="+camID+"getImg";
//     ClockTimer cl(tmp);
        info=m_imgBufQue.front();
        int size=m_imgBufQue.size();
//        DBG("m_imgBufQue size="<<size<<" camId="<<camID<<" fileMin="<<fileMin/2);
@@ -111,19 +126,20 @@
        {
             m_imgBufQue.pop();
        }
 }
 void NewRecordVideoElement::threadFunc()
 {
//        Record();
 }
 void NewRecordVideoElement::threadInitial()
 {
//        if(isRecord)
//        DBG("camId="<<camID<<"gettime="<<info.time);
 }
// void NewRecordVideoElement::threadFunc()
// {
//       Record();
// }
// void NewRecordVideoElement::threadInitial()
// {
// }
 void NewRecordVideoElement::Record() {
     switch(recordStatus)
@@ -194,6 +210,8 @@
     }
 }
 void NewRecordVideoElement::setSdkTrigger(bool isTrigger) {
//     std::string tmp="camId="+camID+"setSdkTrigger";
//     ClockTimer cl(tmp);
     if(isTrigger)
     {
//         DBG("setSdkTrigger time=" << AppUtil::getTimeUSecString());