Blame view

src/decoder/dvpp/DvppDecoderApi.cpp 2.66 KB
0b4cd5d5   Hu Chunming   完成轨迹定时抓拍
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
  #include "DvppDecoderApi.h"
  #include "DvppDecoder.h"
  
  DvppDecoderApi::DvppDecoderApi(){
      m_pDecoder = nullptr;
  }
  
  DvppDecoderApi::~DvppDecoderApi(){
      if(m_pDecoder != nullptr){
          delete m_pDecoder;
          m_pDecoder = nullptr;
      }
  }
  
  bool DvppDecoderApi::init(FFDecConfig& cfg){
      m_pDecoder = new DvppDecoder();
      if(m_pDecoder != nullptr){
          return m_pDecoder->init(cfg);
      }
      return false;
  }
  
  void DvppDecoderApi::close(){
      if(m_pDecoder != nullptr){
          return m_pDecoder->close();
      }
  }
  
  bool DvppDecoderApi::start(){
      if(m_pDecoder != nullptr){
          return m_pDecoder->start();
      }
      return false;
  }
  
  void DvppDecoderApi::pause(){
      if(m_pDecoder != nullptr){
          return m_pDecoder->pause();
      }
  }
  
  void DvppDecoderApi::resume(){
      if(m_pDecoder != nullptr){
          return m_pDecoder->resume();
      }
  }
  
  void DvppDecoderApi::setDecKeyframe(bool bKeyframe){
      if(m_pDecoder != nullptr){
          return m_pDecoder->setDecKeyframe(bKeyframe);
      }
  }
  
  bool DvppDecoderApi::isRunning(){
      if(m_pDecoder != nullptr){
          return m_pDecoder->isRunning();
      }
      return false;
  }
  
  bool DvppDecoderApi::isFinished(){
      if(m_pDecoder != nullptr){
          return m_pDecoder->isFinished();
      }
      return false;
  }
  
  bool DvppDecoderApi::isPausing(){
      if(m_pDecoder != nullptr){
          return m_pDecoder->isPausing();
      }
      return false;
  }
  
  bool DvppDecoderApi::getResolution(int &width, int &height){
      if(m_pDecoder != nullptr){
          return m_pDecoder->getResolution(width, height);
      }
      return false;
  }
  
  bool DvppDecoderApi::isSurport(FFDecConfig& cfg){
      if(m_pDecoder != nullptr){
          return m_pDecoder->isSurport(cfg);
      }
      return false;
  }
  
  float DvppDecoderApi::fps(){
      if(m_pDecoder != nullptr){
          return m_pDecoder->fps();
      }
      return 0.0;
  }
  
  int DvppDecoderApi::getCachedQueueLength(){
      if(m_pDecoder != nullptr){
          return m_pDecoder->getCachedQueueLength();
      }
      return 0;
  }
  
  void DvppDecoderApi::setName(string nm){
      if(m_pDecoder != nullptr){
          return m_pDecoder->setName(nm);
      }
  }
  
  string DvppDecoderApi::getName(){
      if(m_pDecoder != nullptr){
          return m_pDecoder->getName();
      }
      return nullptr;
  }
  
9b4d4adf   Hu Chunming   添加定时抓拍;
116
  DeviceMemory* DvppDecoderApi::snapshot(){
0b4cd5d5   Hu Chunming   完成轨迹定时抓拍
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
      if(m_pDecoder != nullptr){
          return m_pDecoder->snapshot();
      }
      return nullptr;
  }
  
  void DvppDecoderApi::setPostDecArg(const void* postDecArg){
      if(m_pDecoder != nullptr){
          return m_pDecoder->setPostDecArg(postDecArg);
      }
  }
  
  void DvppDecoderApi::setFinishedDecArg(const void* finishedDecArg){
      if(m_pDecoder != nullptr){
          return m_pDecoder->setFinishedDecArg(finishedDecArg);
      }
  }