From f2327d66d762a2279bf7b725a818a17a213e9e0b Mon Sep 17 00:00:00 2001 From: pans <pans@454eff88-639b-444f-9e54-f578c98de674> Date: 星期三, 09 八月 2017 14:57:48 +0800 Subject: [PATCH] add RemoteMethod.capnp etc. --- VisitFace/RtspNativeCodec/app/src/main/cpp/CameraWrapperServer.cpp | 22 +++++++++------------- 1 files changed, 9 insertions(+), 13 deletions(-) diff --git a/VisitFace/RtspNativeCodec/app/src/main/cpp/CameraWrapperServer.cpp b/VisitFace/RtspNativeCodec/app/src/main/cpp/CameraWrapperServer.cpp index 7c1adbd..b80108e 100644 --- a/VisitFace/RtspNativeCodec/app/src/main/cpp/CameraWrapperServer.cpp +++ b/VisitFace/RtspNativeCodec/app/src/main/cpp/CameraWrapperServer.cpp @@ -1,4 +1,5 @@ #include "CameraWrapperServer.h" +#include "RemoteFuncServer.h" #include <logger.h> #include <Logger/src/logger.hpp> #include <MaterialBuffer.h> @@ -10,7 +11,6 @@ #include <PL_ColorConv.h> #include <PL_AndroidMediaCodecEncoder.h> #include <PL_RTSPServer.h> - CameraWrapper::~CameraWrapper() { stop(); @@ -372,17 +372,21 @@ bool cw_pm_breaker_ptr_face(const PipeMaterial* pm, void* args) { CameraWrapper& cameraWrapper = *(CameraWrapper*)args; - if (cameraWrapper.faceCacheLocked) return false; int faceCount = cameraWrapper.faceCache.getFaceCount(*pm); if (faceCount <= 0 || cameraWrapper.faceCallbackFunc == 0) return false; - cameraWrapper.faceCache.cachePm(*pm); - invokeCallback(cameraWrapper, faceCount); - + //remote call start, 涓轰簡淇濊瘉閫氱敤鎬э紝鏈皢浠ヤ笅姝ラ灏佸叆RtspFaceDetectClient + RtspFaceDetectClient &client = getRtspFaceDetectClient(); + auto request = client.fireFaceCountListenerRequest(); + request.setCameraIndex(cameraWrapper.cameraIdx); + request.setFaceCount(cameraWrapper.faceCache.getFaceCount(*pm)); + auto sendAct = request.send(); + sendAct.wait(client.getWaitScope()); + //remote call end return false; } @@ -409,14 +413,6 @@ cameraWrapper.plplContext.params.push_back(100); cameraWrapper.plplContext.params.push_back(100); } - -//struct ScopeMutexLocker -//{ -// pthread_mutex_t* mut; -// ScopeMutexLocker(pthread_mutex_t* _mut) : mut(_mut){pthread_mutex_lock(mut);}; -// ~ScopeMutexLocker(){pthread_mutex_unlock(mut);} -// //ScopeMutexLocker(&(cameraWrapper.live_daemon_mut)); -//}; void cw_elem_destory_func(PipeLineElem* elem) { -- Gitblit v1.8.0