From b022b91c0c6fa807424b6c12cc92ac5946838083 Mon Sep 17 00:00:00 2001 From: houxiao <houxiao@454eff88-639b-444f-9e54-f578c98de674> Date: 星期四, 13 七月 2017 16:34:39 +0800 Subject: [PATCH] update pipeline --- RtspFace/PL_Queue.h | 15 +++++++++++---- 1 files changed, 11 insertions(+), 4 deletions(-) diff --git a/RtspFace/PL_Queue.h b/RtspFace/PL_Queue.h index 72f01e2..6ab852b 100644 --- a/RtspFace/PL_Queue.h +++ b/RtspFace/PL_Queue.h @@ -2,6 +2,9 @@ #define _PL_QUEUE_H_ #include "PipeLine.h" +#include "MaterialBuffer.h" + +typedef bool (*plq_cache_pm_func_t)(const PipeMaterial& inPm, PipeMaterial& outPm, std::vector<MB_Frame>& outMbf, uint8_t* cacheData, size_t& cacheMaxSize); struct PL_Queue_Config { @@ -11,12 +14,16 @@ bool syncQueueFull; bool syncQueueEmpty; - bool queueFullDropBlock; + bool queueFullDropFrontBlock; bool copyData; //#todo not implement (copy ptr) + bool dropBlockOnlyNextPayOK; + + plq_cache_pm_func_t cacheFrameListFunc; PL_Queue_Config() : - maxBlockCount(100), maxBlockSize(300000), cacheEmptyBlock(false), - syncQueueFull(true), syncQueueEmpty(true), queueFullDropBlock(false), copyData(true) + maxBlockCount(32), maxBlockSize(1920*1080*2), cacheEmptyBlock(false), + syncQueueFull(true), syncQueueEmpty(true), queueFullDropFrontBlock(false), copyData(true), dropBlockOnlyNextPayOK(true), + cacheFrameListFunc(nullptr) { } }; @@ -34,7 +41,7 @@ virtual bool gain(PipeMaterial& pm); private: - static void pm_deleter_qb(PipeMaterial* pm); + static void pm_deleter_qb(PipeMaterial* pm, bool lastRet); void* internal; }; -- Gitblit v1.8.0