From 18a05d269516a5e33d8460291c2f93e73d95adce Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期二, 26 十二月 2023 10:45:31 +0800
Subject: [PATCH] GetYUV format is NV12

---
 csrc/worker/decoder.hpp |   18 ++++++++----------
 1 files changed, 8 insertions(+), 10 deletions(-)

diff --git a/csrc/worker/decoder.hpp b/csrc/worker/decoder.hpp
index 94bbb03..7f87180 100644
--- a/csrc/worker/decoder.hpp
+++ b/csrc/worker/decoder.hpp
@@ -12,6 +12,8 @@
 struct AVFrame;
 struct AVCodecContext;
 
+class CPacket;
+
 namespace ffwrapper
 {
     class FormatIn;
@@ -20,26 +22,22 @@
 
 namespace cffmpeg_wrap
 {
-    typedef struct _frm{
-        AVFrame *frm;
-        int64_t id;
-    }FRM;
-
     class decoder
     {
     private:
 
         ffwrapper::FormatIn *decRef_;
-
-        std::list<FRM> list_frm_;
-        std::mutex mutex_frm_;
         
+        std::list<CPacket> list_pkt_;
+        std::mutex mutex_pkt_;
+        
+        int64_t next_idx_;
+
     private:
         int initDecoder();
-        int saveFrame(AVFrame *frame, int64_t &id);
     public: 
         void Start();
-        int SetFrame(std::shared_ptr<ffwrapper::CodedData> data, int64_t &id);
+        int SetFrame(const CPacket &pkt);
         void GetFrame(unsigned char **data, int *w, int *h, int *format, int *length, int64_t *id);
     
     public:

--
Gitblit v1.8.0