From d3b7bbe7102cd089680a828f5d8f6402c8cf6342 Mon Sep 17 00:00:00 2001 From: pansen <pansen626@sina.com> Date: 星期四, 07 三月 2019 14:43:28 +0800 Subject: [PATCH] GB28181集成完成,集成推流模块 --- QiaoJiaSystem/StructureApp/FaceExtractElement.cpp | 40 ++++++++++++++++++++++------------------ 1 files changed, 22 insertions(+), 18 deletions(-) diff --git a/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp b/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp index c3f170a..a8aa27e 100644 --- a/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp +++ b/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp @@ -38,8 +38,7 @@ appPref.getIntData("faceSear.port"), "tcp"), // faceSearchRpcClient("faceCmServer", "", 10004, "tcp") m_sdkRule(rule), - m_rpcClient("RtspAnalysServer", "127.0.0.1",10009,"tcp") -{ + m_rpcClient("RtspAnalysServer", "127.0.0.1", appPref.getIntData("RpcServerPort"), "tcp") { sharedMemory = new QSharedMemory(QString(shareMemoryName.c_str())); if (!sharedMemory->create(4608 * 2592 * 4)) { sharedMemory->attach(); @@ -62,10 +61,14 @@ } void FaceExtractElement::timerFunc() { + INFO("MYH Run Here"); std::vector<FaceToExtract> faceExtractQueueTmp; { std::lock_guard<std::mutex> lg(imageQueueMutex); - if (faceExtractQueue.empty())return; + if (faceExtractQueue.empty()) { + ERR("faceExtractQueue.empty "); + return; + } faceExtractQueueTmp.swap(faceExtractQueue); faceExtractQueue.clear(); } @@ -101,7 +104,7 @@ // cv::imwrite(string1, image); // } if (feature.empty()) { - ERR("feature is empty"); + INFO("No Face Find: " << getProperty("imgKey")); continue; } features.clear(); @@ -114,12 +117,15 @@ CvUtil::cvMat2Buffer(faceExtractQueueTmp[i].faceImages[j], buffer); std::string strImgUrlTmp = ""; fdfsClient->fastFds->uploadFile(buffer, strImgUrlTmp, "jpg"); - // strImgUrl.append(fdfsClient->fastFds->getIp() + "/" + strImgUrlTmp); - DBG("strImgUrlTmp="<<strImgUrlTmp); + // strImgUrl.append(fdfsClient->fastFds->getIp() + "/" + strImgUrlTmp); + DBG("strImgUrlTmp=" << strImgUrlTmp); strImgUrl.clear(); strImgUrl = strImgUrlTmp; // strImgUrl.append("/").append(strImgUrlTmp); fdfsClient->rwLock.unlock(); + } else { + strImgUrl = ""; + ERR("fdfsClient is nullptr ???"); } //鎷兼帴json @@ -146,7 +152,7 @@ t_json["personPicUrl"] = "";//浜哄憳鍥剧墖 store t_json["picAddress"] = getProperty("str_addr");//鎶撴媿鍦板潃 - DBG("picAddress="<< t_json["picAddress"] ); + DBG("picAddress=" << t_json["picAddress"]); t_json["picMaxUrl"] = "";//澶у浘璺緞 t_json["picLocalUrl"] = "";//鏈湴璺緞 t_json["picSmUrl"] = strImgUrl;//浜哄憳鎶撳皬鍥� @@ -158,7 +164,8 @@ t_json["content"] = ""; //t_json["viType"] = "2";//鍙湁4绉嶇被鍨� 1:personface 2:personbody 3:car 4:bicycle 5:none 鏈煡绫诲瀷 - t_json["sdkType"] = std::to_string(m_sdkRule.nSdkType);//鍙湁4绉嶇被鍨� 1:personface 2:personbody 3:car 4:bicycle 5:none 鏈煡绫诲瀷 + t_json["sdkType"] = std::to_string( + m_sdkRule.nSdkType);//鍙湁4绉嶇被鍨� 1:personface 2:personbody 3:car 4:bicycle 5:none 鏈煡绫诲瀷 t_json["personIsHub"] = "4";//1: 鎶ヨ 2: 鍙枒 3: 瀹夊叏 4: 鏈煡 @@ -214,23 +221,20 @@ t_json["indevicename"] = appPref.getStringData("fxDevNAME"); std::string strImageKey = faceExtractQueueTmp[i].scoredRects[j].properties["imgKey"]; - INFO("SaveImageKey To ES: "<<strImageKey); + INFO("SaveImageKey To ES: " << strImageKey); t_json["imgKey"] = strImageKey; try { auto server = m_rpcClient.getServer(); - if (!server) - { + if (!server) { ERR("server is null"); - return; + //return; } - INFO("Record Video "<<strImageKey); + INFO("Record Video " << strImageKey); server->recordVideo(strImageKey); - } - catch (std::exception &e) - { - ERR("Record Video Err: "<<strImageKey <<" Message: "<<e.what()); - return; + } catch (std::exception &e) { + ERR("Record Video Err: " << strImageKey << " Message: " << e.what()); + //return; } auto faceSearchServer = faceSearchRpcClient.getServer(); if (!faceSearchServer) { -- Gitblit v1.8.0