From 87baff1f74bc17dc7a664b3176288a235bd024f6 Mon Sep 17 00:00:00 2001 From: miyanhui <dennismi1024@gmail.com> Date: 星期二, 19 二月 2019 17:02:59 +0800 Subject: [PATCH] 录像失败不直接返回 --- QiaoJiaSystem/StructureApp/FaceExtractElement.cpp | 31 ++++++++++++++++++++++++++++--- 1 files changed, 28 insertions(+), 3 deletions(-) diff --git a/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp b/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp index 4fed07d..b0eab37 100644 --- a/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp +++ b/QiaoJiaSystem/StructureApp/FaceExtractElement.cpp @@ -37,7 +37,8 @@ faceSearchRpcClient(appPref.getStringData("faceSear.proxy"), appPref.getStringData("faceSear.ip"), appPref.getIntData("faceSear.port"), "tcp"), // faceSearchRpcClient("faceCmServer", "", 10004, "tcp") - m_sdkRule(rule) + m_sdkRule(rule), + m_rpcClient("RtspAnalysServer", "127.0.0.1",appPref.getIntData("RpcServerPort"),"tcp") { sharedMemory = new QSharedMemory(QString(shareMemoryName.c_str())); if (!sharedMemory->create(4608 * 2592 * 4)) { @@ -61,10 +62,15 @@ } 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(); } @@ -100,7 +106,7 @@ // cv::imwrite(string1, image); // } if (feature.empty()) { - ERR("feature is empty"); + INFO("No Face Find: "<<getProperty("imgKey")); continue; } features.clear(); @@ -212,6 +218,25 @@ t_json["indeviceid"] = appPref.getStringData("fxDevID"); t_json["indevicename"] = appPref.getStringData("fxDevNAME"); + std::string strImageKey = faceExtractQueueTmp[i].scoredRects[j].properties["imgKey"]; + INFO("SaveImageKey To ES: "<<strImageKey); + t_json["imgKey"] = strImageKey; + + try { + auto server = m_rpcClient.getServer(); + if (!server) + { + ERR("server is null"); + //return; + } + INFO("Record Video "<<strImageKey); + server->recordVideo(strImageKey); + } + catch (std::exception &e) + { + ERR("Record Video Err: "<<strImageKey <<" Message: "<<e.what()); + //return; + } auto faceSearchServer = faceSearchRpcClient.getServer(); if (!faceSearchServer) { ERR("faceSearchServer is null"); -- Gitblit v1.8.0