| | |
| | | //#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; |
| | | //isRecord=false; |
| | | m_cutPath= appPref.getStringData("user.loop.absolute.path"); |
| | | |
| | | recordInit(appPref.getIntData("n_cut_min_duration"),appPref.getIntData("n_cut_max_duration")); |
| | |
| | | std::queue<ImgInfo> empty; |
| | | empty.swap(m_imgBufQue); |
| | | |
| | | //m_imgBufQue.clear(); |
| | | |
| | | } |
| | | |
| | | std::string NewRecordVideoElement::startRecord() { |
| | | |
| | | // ImgInfo info=m_HiredisTool.getImage(camID); |
| | | //isRecord=true; |
| | | |
| | | |
| | | 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); |
| | |
| | | // DBG("sdkTrigger:" << sdkTrigger); |
| | | m_hiredisTool.pushImageBuf(m_filename,info.img); |
| | | m_hiredisTool.addFileInfo(m_filename,RECORD_ENDING); |
| | | // isRecord=false; |
| | | |
| | | } |
| | | |
| | | void NewRecordVideoElement::doRecord() { |
| | |
| | | } |
| | | 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; |
| | |
| | | } |
| | | 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); |
| | |
| | | } |
| | | } |
| | | void NewRecordVideoElement::setSdkTrigger(bool isTrigger) { |
| | | // std::string tmp="camId="+camID+"setSdkTrigger"; |
| | | // ClockTimer cl(tmp); |
| | | if(isTrigger) |
| | | { |
| | | // DBG("setSdkTrigger time=" << AppUtil::getTimeUSecString()); |