From 2f52ba12c4518a0de2478fca130997e73e514e09 Mon Sep 17 00:00:00 2001 From: qvyuanxin <qvyuanxin@454eff88-639b-444f-9e54-f578c98de674> Date: 星期一, 10 七月 2017 16:23:24 +0800 Subject: [PATCH] --- VisitFace/RtspNativeCodec/app/src/main/cpp/FaceCache.h | 41 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 39 insertions(+), 2 deletions(-) diff --git a/VisitFace/RtspNativeCodec/app/src/main/cpp/FaceCache.h b/VisitFace/RtspNativeCodec/app/src/main/cpp/FaceCache.h index 8c2e077..2f9cea5 100644 --- a/VisitFace/RtspNativeCodec/app/src/main/cpp/FaceCache.h +++ b/VisitFace/RtspNativeCodec/app/src/main/cpp/FaceCache.h @@ -2,6 +2,22 @@ #define __FaceCache_H__ #include <PipeLine.h> +#include <vector> + +struct NativeImgIdx +{ + int st_track_id; + int offset; + int size; + int type; + int width; + int height; + + NativeImgIdx() : st_track_id(-1), offset(0), size(0), type(0), width(0), height(0) + {} + + operator std::string() const; +}; class FaceCache { @@ -17,13 +33,34 @@ // returns count of face int cachePm(const PipeMaterial& pm); - + size_t getFaceCount(const PipeMaterial& pm) const; + bool getFaceListPb(uint8_t* buffer, size_t& buffMaxSize); - bool getFaceListImage(int* buffIdx, size_t& count, uint8_t* buffImg, size_t& buffImgMaxSize); + bool getFaceListImage(std::vector<NativeImgIdx>& imgIdxes, uint8_t* buffImg, size_t& buffImgMaxSize); private: void* _ctx; }; + +class FaceCacheForPLBG +{ +public: + + FaceCacheForPLBG(); + ~FaceCacheForPLBG(); + + // returns count of face + int cachePm(const PipeMaterial& pm); + size_t getFaceCount(const PipeMaterial& pm) const; + + bool getFaceListPb(uint8_t* buffer, size_t& buffMaxSize); + + bool getFaceListImage(std::vector<NativeImgIdx>& imgIdxes, uint8_t* buffImg, size_t& buffImgMaxSize); + +private: + void* _ctx; +}; + #endif -- Gitblit v1.8.0