Blame view

src/dvpp/DvppDecoderApi.cpp 2.66 KB
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
1
  #include "DvppDecoderApi.h"
d248da62   Hu Chunming   优化代码,修正dvpp的一些bug
2
  #include "DvppDecoder.h"
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
3
4
5
6
7
8
9
10
11
12
13
14
15
  
  DvppDecoderApi::DvppDecoderApi(){
      m_pDecoder = nullptr;
  }
  
  DvppDecoderApi::~DvppDecoderApi(){
      if(m_pDecoder != nullptr){
          delete m_pDecoder;
          m_pDecoder = nullptr;
      }
  }
  
  bool DvppDecoderApi::init(FFDecConfig& cfg){
d248da62   Hu Chunming   优化代码,修正dvpp的一些bug
16
      m_pDecoder = new DvppDecoder();
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
      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;
  }
  
  FFImgInfo* DvppDecoderApi::snapshot(){
      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);
      }
  }